1. 程式人生 > >php 中 使用foreach為陣列增加鍵值對

php 中 使用foreach為陣列增加鍵值對

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";
    }

這樣得到的陣列就是我們想要的內容。