求教如何合并数组 //比如下面两个数组 $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 ) )