首页 > 后端开发 > php教程 > 如何按多列对数组数据进行分组并对组中的值求和?

如何按多列对数组数据进行分组并对组中的值求和?

Linda Hamilton
发布: 2024-11-05 13:18:02
原创
456 人浏览过

How to Group Array Data by Multiple Columns and Sum Values in Groups?

将数组数据按多列分组并分组求和

在这种情况下,需要根据两个维度对多维数组数据进行分组列值(“部分”和“类型”)并对每个组中特定列的值(“计数”)求和。给定一个如上所述的输入数组 ($arr1),所需的输出 ($arr2) 表示分组数据,其中包含“部分”和“类型”每种组合的计数值之和。

为了实现此结果,可以使用自定义函数:

<code class="php">function groupByPartAndType($input) {
  $output = Array();

  foreach($input as $value) {
    $output_element = &amp;$output[$value['part'] . "_" . $value['type']];
    $output_element['part'] = $value['part'];
    $output_element['type'] = $value['type'];
    !isset($output_element['count']) &amp;&amp; $output_element['count'] = 0;
    $output_element['count'] += $value['count'];
  }

  return array_values($output);
}</code>
登录后复制

在此函数中:

  • 创建 $output 数组来存储分组数据。
  • $ 的每个元素输入被迭代。
  • $output 元素的键是通过连接 'part' 和 'type' 值创建的。
  • $output_element 中的值被相应地分配或更新。
  • 最后,array_values() 用于将 $output 数组的值作为新数组返回。

或者,如果两个数据库位于同一数据库服务器上,则分组和使用 SQL 的 GROUP BY 功能可以有效地执行求和。

以上是如何按多列对数组数据进行分组并对组中的值求和?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板