合并json对象的值

时间:2016-09-15 06:33:06

标签: php json

我需要使用 PHP

对json对象的值求和

JSON

{
  "links": [
    {
      "source": 9887878787,
      "target": 9999999993,
      "value": 1
    },
    {
      "source": 9999999993,
      "target": 9887878787,
      "value": 2
    }
  ]
}

想要合并第一个和第二个对象的值

所需的输出

{
    "links": [
       {
         "source": 9887878787,
         "target": 9999999993,
         "value": 3
       },
       {
         "source": 9999999993,
         "target": 9887878787,
         "value": 3
       }
    ]
}

如何在不使用javasript的情况下实现这一目标。我需要php脚本吗?

提前多多谢谢你。

1 个答案:

答案 0 :(得分:1)

这是一种方法:

$data = json_decode('{
  "links": [
    {
      "source": 9887878787,
      "target": 9999999993,
      "value": 1
    },
    {
      "source": 9999999993,
      "target": 9887878787,
      "value": 2
    }
  ]
}');

$sum = 0;
foreach ($data->links as $link) {
    $sum += $link->value;
}

foreach ($data->links as &$link) {
    $link->value = $sum;
}

echo json_encode($data);

希望这有帮助。