我需要通过对匹配键的值进行求和来合并两个未定义维度的数组(如果不匹配,则需要>追加)。
以下示例以JSON的形式给出,但它已经转换为数组:
JSON 1:
{
"profile_id": "1011:profile",
"data":{
"xp":50,
"bananas":10
}
}
JSON 2:
{
"data":{
"bananas":20,
"xp":200,
"cars":3
}
}
组合:
{
"data":{
"xp":250,
"bananas":30,
"cars":3
}
}
但是上面的例子没有修复,我可以将“xp”字段作为子子键。 更好的说,我需要对所有重叠键求和,并将所有非重叠键(合并)附加到数组,而不需要固定的数组深度。就像array_merge()一样,如果重叠则为sum。此外,键的顺序是未定义的。
谢谢!
答案 0 :(得分:1)
尝试使用array_merge()http://us1.php.net/array_merge
<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>
输出:
Array
(
[color] => green
[0] => 2
[1] => 4
[2] => a
[3] => b
[shape] => trapezoid
[4] => 4
)