php 中的 foreach
在php中,使用foreach來遍歷數組的頻率很高,並且其性能要高於 list() 和 each() 結合來遍歷數組:
當遍歷二位數組的第一層數組,並要給第二位數組增加一個新的鍵值對時。例如我有這樣的二維數組結構
$a = array( array( 'a' => "first" ), array( 'a' => "second" ) );
這是我打算為第二層的每個數組增加一個鍵值對
'b' => "value"
這時使用foreach的話
foreach ($a as $item) { $item['b'] = "value"; }
得到的結果和原數組一樣,並沒有增加鍵值對 ‘b’ => “value”
只需要對以上代碼做一點修改就能實現我們的需求,即在$item前加一個取地址符&,如下
foreach ($a as &$item) { $item['b'] = "value"; }
這樣得到的數組就是我們想要的內容。
參考:https://blog.csdn.net/j_h_xie/article/details/53977797