php中数组遍历改值

<?php
$arr = array(100, 99, 88, 77, 55, 66);
//方法1
foreach ($arr as &$v) {
        $v = 2;
}
print_r($arr);//Array ( [0] => 2 [1] => 2 [2] => 2 [3] => 2 [4] => 2 [5] => 2 ) 
//方法2
foreach ($arr as $k=>$v) {
        $arr[$k] = 3;
}
print_r($arr);//Array ( [0] => 3 [1] => 3 [2] => 3 [3] => 3 [4] => 3 [5] => 3 )

额  就是这样。

解释一下。方法1的&意思是取地址符。

方法1和2在foreach之后的结果是一样的

但在foreach中不同。

方法1是将每个元素的值改成了2。

方法2是将元素指向的地址改到了值3上。

原文地址:https://www.cnblogs.com/sweetXiaoma/p/6180444.html