foreach 加&遍歷的同時改變原數組即修改數據或者增加數據
foreach 加& 什么意思?
注意:如果我要改變數組某一個值 直接遍歷的話原數組是不會變的 下面提供兩種方法
1.我們可以遍歷的時候組合數據然后 array_push()把數據賦給另一個新的數組這樣才可以 如:
$data=array(1,2,3,4);
$newdata=array();
foreach($data as $k=>$v){
if($v==2) $v=666;//我們想把值等於2的改為666 這樣的話在內部改變了$v但是$data還是沒改變
array_push($newdata,$v);//這樣可以得到我們想要的數組
}
2.我們可以在遍歷的值前面加個&符號這樣就可以改變原數組了 不需要用array_push()了
$data=array(1,2,3,4);
foreach($data as &$v){
if($v==2) $v=666;//因為$v前面加了'&'所以原數組就直接改變了
}
鏈接:http://www.jianshu.com/p/13f89fb42bbf
來源:簡書
