添加PHP数组中的所有int()值

时间:2013-02-23 21:51:28

标签: php arrays json int

我有一个JSON文件,我使用json_decode()解析它,它将JSON文件的内容作为数组输出,这是数据输出的示例:

array(1) {
  ["petition"]=>
    array(2) {
      ["postal_districts"]=>
        array(2257) {
          ["DH4"]=>
          int(12)
          ["BT5"]=>
          int(14)
          ["WA9"]=>
          int(72)
          ["EH17"]=>
          int(5)
       }
    }
}

我希望将“postal_districts”下的所有int()值相加,但目前我对如何实现这一点感到茫然。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:8)

如果它们都是整数,您可以尝试:

$sum = array_sum($arr['petition']['postal_districts']);

(参见array_sum是否有帮助)

如果没有,请先过滤它们:

$ints = array_filter($arr['petition']['postal_districts'], 'is_int');
$sum = array_sum($ints);

答案 1 :(得分:3)

$sum = 0;
foreach($array['petition']['postal_districts'] as $val)
    $sum += $val;
echo $sum;

你的意思是?