1. 程式人生 > >php使用foreach迴圈時最後一組資料重複,原因&

php使用foreach迴圈時最後一組資料重複,原因&

foreach迴圈後最後一組資料重複,列印資料觀察發現最後一組資料多了一個 & 符號

這是我用的foreach迴圈

 

原來foreach加了&引用符號,在迴圈結束後,這個變數還有效(foreach不隔離作用域),而且是引用變數
下面是解決辦法:
$length = count($arr_list['list']);//算出該陣列的長度
$last = $arr_list['list'][$length-1];//取出最後一個數組的值,複製給新變數,-1是因為第一個陣列元素下表為0
unset($arr_list['list'][$length-1]);//將最後一個數組登出
$arr_list['list'][] = $last;//再將新變數加入到數組裡