3 回答
TA贡献1777条经验 获得超10个赞
只需合并它们,然后对键进行排序:
$arrData = array_merge(...$arrData);
ksort($arrData);
而不是...你可以使用:
$arrData = call_user_func_array('array_merge', $arrData);
如果你真的希望结果是多维的,那么:
$arrData = [$arraData];
//or
$arrData = array($arrData);
TA贡献1793条经验 获得超6个赞
您可以使用array_reduce(或一个简单的 foreach 循环)将每个后续数组值与第一个值合并:
$out = array_reduce($arrData, function ($c, $v) { return array_merge($c, $v); }, array());
print_r($out);
$out = array();
foreach ($arrData as $arr) {
$out = array_merge($out, $arr);
}
print_r($out);
输出(对于两个示例):
Array (
[a] => test
[c] => 1
[d] => 2
[e] => B
[b] => test2
)
如果要按字母顺序保留键,可以使用ksort:
ksort($out);
print_r($out);
Array (
[a] => test
[b] => test2
[c] => 1
[d] => 2
[e] => B
)
- 3 回答
- 0 关注
- 143 浏览
添加回答
举报