2012-01-16 77 views
2

您好,我有兩個數組這樣如何根據值合併兩個多維數組?

array (
[0]=>array(
    [0]=>10, 
    [1]=>Some Name.. 
), 
[1]=>array(
    [0]=>11, 
    [1]=>Some Name..  
), 
[2]=>array(
    [0]=>13, 
    [1]=>Some Name..  
) 
) 

這樣

array (
[0]=>array(
    [0]=>13, 
    [1]=>Viewed 
    ) 
) 

如何合併上述兩個數組,而無需使用任何循環另一個陣列?任何PHP功能都可用於此?我需要這樣一個不折不扣的把

array (
    [0]=>array(
       [0]=>10, 
       [1]=>Some Name.. 
    ), 
    [1]=>array(
       [0]=>11, 
       [1]=>Some Name.. 
    ), [2]=>array(
       [0]=>13, 
       [1]=>Some Name.. 
       [2]=Viewed 
    ) 
) 
+0

你爲什麼要resrticted不使用循環方案的陣列?您是否意識到任何解決方案都會涉及循環,即使它沒有明確顯示在PHP代碼中? – Borodin 2012-01-16 12:08:51

+0

循環有什麼問題? – maiwald 2012-01-16 12:08:53

+0

http://stackoverflow.com/questions/8561987/php-merge-two-arrays – 2012-01-16 12:29:38

回答

6

您可以使用PHP函數array_merge_recursive。 參見例如:

<?php 
$ar1 = array("color" => array("favorite" => "red"), 5); 
$ar2 = array(10, "color" => array("favorite" => "green", "blue")); 
$result = array_merge_recursive($ar1, $ar2); 
print_r($result); 
?> 
0
<?php 
$array1 = array("color" => "red", 2, 4); 
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4); 
$result = array_merge($array1, $array2); 
print_r($result); 
?> 

更多細節檢查:

http://php.net/manual/en/function.array-combine.php

http://php.net/manual/en/function.array-merge.php

參見

陣列array_merge(數組$數組1 [,數組$ ...]) array_merge_recursive() - 合併兩個或更多陣列遞歸 array_combine() - 創建通過使用密鑰一個陣列,另一個用於其值 陣列運營商

+0

它不會工作 – learner 2012-01-16 12:29:18

+0

爲什麼這樣? @lerner – Infinity 2012-01-16 16:51:22