PHP数组合并的问题搞了很久没有解决:
原始数组
array(
1=> array("12"=>array("aaaa"),"15"=>array("cccc") ),
2=> array("13"=>array("bbbb"),"18"=>array("dddd") ),
3=> array()
)二维的键名保持不变,合并成
array (
"12"=>array("aaaa"),"15"=>array("cccc"),
"13"=>array("bbbb"),"18"=>array("dddd")
)怎么简单实现? 谢谢~!
原始数组
array(
1=> array("12"=>array("aaaa"),"15"=>array("cccc") ),
2=> array("13"=>array("bbbb"),"18"=>array("dddd") ),
3=> array()
)二维的键名保持不变,合并成
array (
"12"=>array("aaaa"),"15"=>array("cccc"),
"13"=>array("bbbb"),"18"=>array("dddd")
)怎么简单实现? 谢谢~!
$arr = array(
1=> array("12"=>array("aaaa"),"15"=>array("cccc") ),
2=> array("13"=>array("bbbb"),"18"=>array("dddd") ),
3=> array()
);
$res = array();
foreach($arr AS $v)
{
$res += $v;
}
print_r($res);
/**Array
(
[12] => Array
(
[0] => aaaa
)
[15] => Array
(
[0] => cccc
)
[13] => Array
(
[0] => bbbb
)
[18] => Array
(
[0] => dddd
)
)
/**/
for($i=0;$i<count($arr);$i++){
if($arr[$i]=="") continue;
foreach($arr[$i] as $k=>$v) $tem[$k]=$v;
}
print_r($tem);
array(
1=> array(
"12"=>array("name"=>"aaaa","age"=>15),
"15"=>array(("name"=>"bbbb","age"=>15)
),
2=> array(
"13"=>array("name"=>"cccc","age"=>15),
"18"=>array(("name"=>"dddd","age"=>15)
),
3=> array()
)因此不能用加号运算符,进行数组合并。
1=> array("12"=>array("aaaa"),"15"=>array("cccc") ),
2=> array("13"=>array("bbbb"),"18"=>array("dddd") ),
3=> array()
);$result = array();
foreach($ar as $v) foreach($v as $k => $vv) $result[$k] = $vv;