对数组中的对象属性求和

php
2022-08-30 22:32:13

我有一个对象数组,我想对其中一个属性的值求和,例如:

Array
(
[0] => stdClass Object
    (
        [name] => jon
        [commission] => 5

    )
[1] => stdClass Object
    (
        [name] => smith
        [commission] => 1

    )
[2] => stdClass Object
    (
        [name] => philip
        [commission] => 8

    )
)  

我想对数组中的所有佣金求和,结果应该是14。

什么是一个好方法?


答案 1

array_reduce可能是做到这一点的一种方法;只需简单地添加您的$array

$sum = array_reduce($array, function($carry, $item)
{
    return $carry + $item->commission;
});

var_dump($sum);

答案 2

如果您使用的是 PHP 5.5

$arr_new = array_sum(array_column($yourarray, 'commission'));

推荐