0

我需要通过对匹配键的值求和(如果不匹配->追加)来合并两个未定义维度的数组。

以下示例以 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”字段作为子子键。更好的说法是,我需要对所有重叠键求和,并将所有非重叠键(合并)附加到数组中,而没有固定的数组深度。如果重叠,则类似于带有 sum 的 array_merge()。此外,键的顺序是未定义的。

谢谢!

4

1 回答 1

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
)
于 2013-11-07T09:47:42.047 回答