合并两个多维数组,保留数字键,并在数组中组合值

时间:2015-09-29 22:09:17

标签: php arrays multidimensional-array merge

我有两个数组,想要将它们组合/合并/放在一起。

ui-view

,结果将是:

$arr1 = array(
    0 => array(1, 2),
    1 => array(5, 6)
);

$arr2 = array(
    0 => array(2, 3),
    1 => array(6, 7)
);    

come_together_right_now($arr1, $arr2); // the missing function?

阵列功能太多了! Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 3 ) [1] => Array ( [0] => 5 [1] => 6 [2] => 7 ) array_merge以及递归替代方案似乎取代了值,并且它们不会保留数字键。我该怎么做?

2 个答案:

答案 0 :(得分:3)

假设他们总是拥有相同的钥匙!

$result = array();

foreach($arr1 as $key=>$array) {
    $result[$key] = array_merge($array, $arr2[$key]);
}

答案 1 :(得分:2)

我可能会迟到回答这个问题,但这可能会帮助您简单地使用array_maparray_mergearray_unique功能,例如

$result = array_map('array_unique',array_map('array_merge',$arr1,$arr2));
print_r($result);

<强>输出

Array ( 
    [0] => Array ( 
        [0] => 1 
        [1] => 2 
        [2] => 3 
    )
    [1] => Array ( 
        [0] => 5 
        [1] => 6 
        [2] => 7 
    )

Demo