作者eagen0828 (EaGen)
看板PHP
标题[请益] 有关unset的疑问
时间Tue Jul 17 14:12:49 2007
最近在写程式的时候遇到一个问题
就是我在删除阵列中元素的时候
用 unset($a[$n]);
可是他连同 $a[$n+1] 一起删除了
而且最让我疑惑的是 Firefox没有这样的问题 只有IE有 orz
下面是我的程式 请各位大大帮我检查一下 orz
$a = explode(",",$_SESSION['a']);
$b = explode(",",$_SESSION['b']);
$n = $_POST['n'];
unset($a[$n]);
unset($b[$n]);
$_SESSION['a'] = join(",",$a);
$_SESSION['b'] = join(",",$b);
状况:
$a = array("1","2","3")
$b = array("1","1","1")
$n = 0
unset後
$a = array("3")
$b = array("1")
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.133.92.86
1F:推 knockout:呃 没人回答 ~~ 基本上 也没出过这问题 ~~ 07/17 18:50
2F:→ knockout:检查一下$_POST里的东西吧 ~ :) 07/17 18:51
3F:推 eagen0828:有检查过了 可是就像我内文说得 $n接收到是正确的 07/17 20:06
4F:→ eagen0828:而且很奇妙的是 我在$_SESSION['a'] = join(",",$a); 07/17 20:06
5F:→ eagen0828:这个动作以前 unset出来的值也是正确的 07/17 20:07
6F:→ eagen0828:然後 直接echo join(",",$a); 也是正确的 >_< 07/17 20:07
7F:推 eagen0828:我找到问题了 可是不知道怎麽解决 -_- 07/17 20:26
8F:→ eagen0828:问题是在$_SESSION['a'] = join(",",$a);的时候 07/17 20:26
9F:→ eagen0828:从2,3 变成了 3 orz 07/17 20:27
10F:推 knockout:每个阵列都print_r看看吧 ~~ (摊手) 07/18 12:22