求教如何合并数组

求教如何合并数组,第1张

//比如下面两个数组$a1=array(2=>array(1,2),3=>array(4));$a2=array(2=>array(5),5=>array(4));/***我想$a1跟$a2合并的结果为 array(2=>array(1,2,5),3=>array(4),5=>array(4));**/

有什么好的方法?


回复讨论(解决方案)

$keys = array_unique(array_keys(array_merge($arr1, $arr2)));foreach($keys as $k) { .....}

如果不考虑更进一步的递归 每次都是两个二维数组合并的话 直接写个循环然后array_merge如何?

楼上正解。






$a1 = array(2=>array(1,2),3=>array(4));$a2 = array(2=>array(5),5=>array(4));foreach($a2 as $k=>$v) {  if(isset($a1[$k])) $a1[$k] = array_merge($a1[$k], $v);  else $a1[$k] = $v;}print_r($a1);
Array

(

[2] => Array

(

[0] => 1

[1] => 2

[2] => 5

)


[3] => Array

(

[0] => 4

)


[5] => Array

(

[0] => 4

)


)

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zaji/493250.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018-06-02
下一篇 2018-06-02

发表评论

登录后才能评论

评论列表(0条)

保存