
我unset了之后为什么第二次foreach循环还是输出2468
你unset个$value有什么用,foreach是遍历的$arr,谁教你的这些写法。 想把数组中对应的某个值unset要这么写。
还有就是,没理解了&的作用时,最好不要用,用了&以后,让代码不好理解而且这里完全不需要用&就能搞定的。
<?php
$arr = array(1,2,3,4);
//假设要unset下标为2的值
foreach($arr as $key => $value){
$arr[$key] = $value * 2;
echo $arr[$key];
// unset 下标为2的数值
if($key == 2){
unset($arr[$key]);
}
}
echo "<br>------------------这是分割线------------------<br>";
foreach($arr as $value){
echo $value;
}
?>