2016-09-19 91 views
1

所以我有兩個數組。我的主要一個是存儲在一個名爲$topVideos變量是這樣的:如何合併PHP中兩個不同數組的鍵

["rows"] => array(10) { 
    [0] => array(2) { 
     [0] => string(11) "GARuSV" 
     [1] => float(2003) 
    } 
    [1] => array(2) { 
     [0] => string(11) "rDnbeSrk" 
     [1] => float(1119) 
    } 
    [2] => array(2) { 
     [0] => string(11) "0ykEqaUI" 
     [1] => float(1015) 
    } 

,第二個是存儲在一個名爲$titles變量,如下所示:

array(10) { 
    [0] => string(25) "Serve Heroes" 
    [1] => string(38) "Rover Sailing Adventure!!" 
    [2] => string(54) "BNI Presentation" 

我要做的就是合併第二個的每個關鍵到第一個,所以它可以看起來像這樣:

["rows"] => array(10) { 
     [0] => array(2) { 
      [0] => string(11) "GARuSV" 
      [1] => float(2003) 
      [3] => string(25) "Serve Heroes" 
     } 
     [1] => array(2) { 
      [0] => string(11) "rDnbeSrk" 
      [1] => float(1119) 
      [3] => string(25) "Rover Sailing Adventure!!" 
     } 
     [2] => array(2) { 
      [0] => string(11) "0ykEqaUI" 
      [1] => float(1015) 
      [3] => string(25) "BNI Presentation" 
     } 

我該如何做到這一點?歡迎任何幫助!謝謝你的時間

+2

來吧......你可以明白這一點自己... – arkascha

+0

$ A + $ B數組實際工作中PHP – rak007

回答

3
foreach($titles as $key => $title){ 
    $topVideos["rows"][$key][] = $title; 
} 
+0

這是唯一可行的答案(我測試了它們)。 –

+0

謝謝你的時間!這是我的問題的解決方案! – Alan

+0

不客氣,@Alan –

0

循環數組,檢查數值是否存在於另一個數組中,如果是的話,添加它。

<?php 
foreach($topVideos['rows'] as $i => $v) { 
    if(isset($titles[$i])) { $topVideos['rows'][$i][] = $titles[$i]; } 
} 
?> 
+0

你測試過了嗎?我測試了它,它什麼也沒做。 –

+0

您錯過了第2行第42列 –

+0

Jup陣列'$ topVideos'的標記''rows''標記,並添加了:) – LinkinTED

0

您可以使用array_merge_recursive()來獲得期望的結果

$array = array_merge_recursive($array1, $array2); 
+0

我測試了它,它不起作用,第二個數組是**追加**。 –

相關問題