You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel中统计数组内的所有数据项?

在Laravel中统计数组内所有数据项的方法

如果是类似参考图中的结构化数组(每个子项包含count字段),想要得到总和8,可以用以下几种方式实现:

方法1:使用Laravel集合(推荐)

Laravel的集合提供了便捷的sum方法,直接指定字段名即可求和:

$array = [
    ['count' => 3],
    ['count' => 2],
    ['count' => 3],
];

$total = collect($array)->sum('count');
// 输出结果:8

如果是从Eloquent模型查询得到的集合,直接调用sum方法即可:

$total = YourModel::query()->sum('count');

方法2:原生PHP函数组合

不用集合的话,也可以用array_sum结合array_map处理:

$total = array_sum(array_map(fn($item) => $item['count'], $array));
// 输出结果:8

方法3:递归统计多维数组(通用场景)

如果数组是更深层次的多维结构,需要统计所有叶子节点的数量,可以用递归函数:

function calculateTotal($array) {
    $total = 0;
    foreach ($array as $value) {
        $total += is_array($value) ? calculateTotal($value) : 1;
    }
    return $total;
}

$total = calculateTotal($yourMultiArray);

内容的提问来源于stack exchange,提问作者MaditionSky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 15:35:35