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

PHP实现数组按分钟分组并对count值求和的方法

解决PHP数组按分钟维度分组求和的问题

你的代码存在两个核心问题:

  • 用当前时间与目标时间的分钟差作为键,不符合你需要的「年-月-日 时:分」格式分组要求;
  • 直接将原数组的$value赋值给新数组,没有对count值进行累加,只会保留每组最后一个元素的count,而非求和结果。

以下是修改后的代码,完全匹配你的需求:

$finalArray = [];
foreach ($array as $timeStr => $item) {
    // 将原时间字符串格式化为「年-月-日 时:分」作为分组键
    $groupKey = date("Y-m-d H:i", strtotime($timeStr));
    
    // 初始化分组或累加count值
    if (!isset($finalArray[$groupKey])) {
        $finalArray[$groupKey] = ['count' => 0];
    }
    $finalArray[$groupKey]['count'] += $item['count'];
}

代码逻辑说明

  1. 遍历原数组的每个元素,将精确到秒的时间字符串格式化为分钟级别的时间,作为分组的唯一标识;
  2. 检查结果数组中是否已存在该分组,不存在则初始化分组的count为0;
  3. 将当前元素的count值累加到对应分组的count中,最终得到按分钟分组求和后的数组。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 06:52:55