标签:blog http ar 使用 for div 2014 问题 log
今天在使用foreach遍历数组时发现,当使用&时会出现问题:
$arr = array( array(‘id‘ => 100, ‘error‘=> ‘aa‘), array(‘id‘ => 101, ‘error‘=> ‘bb‘), ); foreach($arr as &$value) { if($value[‘id‘] == 101) $value[‘error‘] = ‘test‘; } var_dump($arr); foreach($arr as $value) {} var_dump($arr);
后来查看手册才发现,原来是因为在遍历时使用引用,当第二次遍历数组时,数组的指针$value 还是指向数组的末尾的元素,当重新赋值时 $value 指向的数组的末尾的元素就被修改了
解决办法是在第一次遍历完成之后就将$value unset()掉。
标签:blog http ar 使用 for div 2014 问题 log
原文地址:http://www.cnblogs.com/axwing/p/4095786.html