php foreach用&引用后需要unset
   $arr = [1, 2, 3, 4];
   foreach ($arr as &$v) {
       $v = $v * 2;
   }
   var_dump($arr);
结果:
array(4) { [0]=> int(2) [1]=> int(4) [2]=> int(6) [3]=> &int(8) }
unset后的结果
$arr = [1, 2, 3, 4];
 foreach ($arr as &$v) {
     $v = $v * 2;
 }
 unset($v);
 var_dump($arr);
array(4) {
  [0]=>
  int(2)
  [1]=>
  int(4)
  [2]=>
  int(6)
  [3]=>
  int(8)
}
转载:https://blog.csdn.net/tuzhenlong/article/details/89669761
数组最后一个元素的 引用在 foreach 循环之后仍会保留。建议使用 unset() 来将其销毁
数组最后一个元素$arr  = array( 1 ,  2 ,  3 ,  4 );
foreach ( $arr  as & $value ) {
     $value  =  $value  *  2 ;
}
// $arr is now array(2, 4, 6, 8)
// 最后取消掉引用的 引用在 foreach 循环之后仍会保留。建议使用 unset() 来将其销毁
unset( $value );
转载:https://www.cnblogs.com/meibao/archive/2004/01/13/6380809.html
foreach($data as $k => $v){
    .........
  ......
  ......
  unset($data[$k])
} 

                    
                
                
            
        
浙公网安备 33010602011771号