【发布时间】:2013-05-23 11:33:04
【问题描述】:
这些数组有办法吗
$array1 = array(
'21-24' => array(
'1' => array("...")
)
);
$array2 = array(
'21-24' => array(
'7' => array("..."),
)
);
$array3 = array(
'25 and over' => array(
'1' => array("...")
)
);
$array4 = array(
'25 and over' => array(
'7' => array("...")
)
);
将哪个结果合并到下面的数组中?
array(
'21-24' => array(
'1' => array("..."),
'7' => array("...")
),
'25 and over' => array(
'1' => array("..."),
'7' => array("...")
)
);
注意:
- 我无法控制数组结构,因此任何需要更改结构的解决方案都不是我想要的
- 我主要对保留前 2 个级别的密钥感兴趣,但更强大的解决方案是可以处理所有级别的解决方案。
我尝试像这样使用array_merge_recursive()
$x = array_merge_recursive($array1, $array2);
$x = array_merge_recursive($x, $array3);
$x = array_merge_recursive($x, $array4);
但结果是
array(
'21-24' => array(
'1' => array("..."),
'2' => array("...")
),
'25 and over' => array(
'1' => array("..."),
'2' => array("...")
)
);
【问题讨论】:
-
你只有4个数组吗?
-
@tessmore 问题已经在解释我尝试过但没有按预期工作
-
@HamZaDzCyberDeV 我正在处理的实际代码各不相同。但不变的是一级和二级密钥。当然,最好的解决方案根本不应该关心这个。
标签: php arrays array-merge