对数组php求和


Make sum of an array php

函数传递的是一个二维数组

function crash_reporter($evaluation){
foreach ($evaluation as $agent){    
    unset($agent['time']);

    print_r($agent);
}

我得到以下数组,我正在努力获得索引值的总和。

Array
(
    [agent_example1] => 0
    [agent_example2] => 2
    [agent_example3] => 0
    [agent_example4] => 1
    [] => 0
)
Array
(
    [agent_example1] => 0
    [agent_example2] => 1
    [agent_example3] => 0
    [agent_example4] => 0
    [] => 0
)
Array
(
    [agent_example1] => 0
    [agent_example2] => 3
    [agent_example3] => 0
    [agent_example4] => 0
    [] => 0
)
        )
)
result should be int. 7

您可以尝试这样做:

function sum_2d_array($outer_array) {
    $sum = 0;
    foreach ($outer_array as $inner_array) {
        foreach ($inner_array as $number) {
            $sum += $number;
        }
    }
    return $sum;
}

或者更简单:

function crash_reporter($evaluation){
    $sum = 0;
    foreach ($evaluation as $agent){    
        unset($agent['time']);
        $sum += array_sum($agent);
    }
    echo $sum;
}

您可以在foreach/unset循环之后对每个子数组($agent)求和,如:

$sum = array_sum(array_map('array_sum', $evaluation));