首页 >后端开发 >php教程 >如何按一列对数组数据进行分组和求和以创建平面关联数组?

如何按一列对数组数据进行分组和求和以创建平面关联数组?

Linda Hamilton
Linda Hamilton原创
2024-12-04 21:14:15726浏览

How to Group and Sum Array Data by One Column to Create a Flat Associative Array?

将一列上的数组数据分组并对另一列中的数据求和,形成平面关联数组

问题:

给定一个包含两列的数据数组,“name”和“金额”,如何按“名称”对数据进行分组并将相应的“金额”值求和以形成平面关联数组?

期望结果:

输出数组应包含分组名称作为键和总金额作为

解决方案:

要获得所需的结果,请按照下列步骤操作:

  1. 初始化一个空数组 称为 $bankTotals。该数组将用于存储分组和求和的数据。
  2. 使用 foreach 循环迭代输入数组
  3. 对于每个元素,提取“名称”和“金额”值。
  4. 检查“名称”是否已经是键 $bankTotals。
  5. 如果“名称”不是键,请将其添加到 $bankTotals 并将其值设置为“金额”。
  6. 如果“名称”已经是一个键,将现有值增加'amount'。
  7. 循环完成后,$bankTotals 将以所需格式包含分组和求和的数据。

示例:

// Assuming $array is the input array
$bankTotals = array();
foreach ($array as $amount) {
  $bankTotals[$amount['name']] += $amount['amount'];
}

此代码将生成一个关联数组例如问题陈述中出现的。

注释:

  • = 运算符用于增加每个“名称”的“金额”值在 $bankTotals.
  • 可以使用 var_dump($bankTotals) 查看输出数组进行调试目的。

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

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn