2014-09-12 46 views
0

我有以下形式的多維PHP數組:產生陣列的列表奇偶視頻PHP行爲的值

Array 
(
    [0] => Array 
     (
      [id] => 45 
      [date] => 2013-05-16 
     ) 

    [1] => Array 
     (
      [id] => 30 
      [date] => 2013-12-10 
     ) 

    [2] => Array 
     (
      [id] => 26 
      [date] => 2014-03-27 
     ) 

    [3] => Array 
     (
      [id] => 34 
      [date] => 2014-03-27 
     ) 

) 

我試圖產生[ID]的值的列表,以逗號分隔,使用下面的PHP代碼:

foreach ($my_array as $key => $value) { 
    if ($key == 0) { 
     $id_list = $value[id]; 
    } 
    if ($key !== 0) { 
     $id_list .= "," . $value[id]; 
    } 
} 

我希望這將返回

45,30,26,34 

...但對於s它返回的原因

45,30,26,26 

即倒數第二個ID被複制並且最後的ID被錯過。我一直在盯着這一段時間,但我看不出我要去哪裏錯了。我錯過了明顯的東西嗎?

+0

會使用['implode'(http://php.net/manual/en/function.implode.php)工作滿足您的需求? – summea 2014-09-12 16:28:44

回答

5

更好的解決辦法是不使用那些if()可言:

$ids = array(); 
foreach($arr as $val) { 
    $ids[] = $val['id']; 
} 

$id_str = implode(',', $ids); 
+0

謝謝 - 現在完美工作 – user1684046 2014-09-12 16:42:04