我需要一组数据行的一列和另一列的总和。
输入:
[
['quantity' => 5, 'dd' => '01-Nov-2012'],
['quantity' => 10, 'dd' => '01-Nov-2012'],
['quantity' => 3, 'dd' => '02-Nov-2012'],
['quantity' => 4, 'dd' => '03-Nov-2012'],
['quantity' => 15, 'dd' => '03-Nov-2012'],
];
预期结果:
[
['quantity' => 15, 'dd' => '01-Nov-2012'],
['quantity' => 3, 'dd' => '02-Nov-2012'],
['quantity' => 19, 'dd' => '03-Nov-2012'],
];
3条答案
按热度按时间vuktfyat1#
只需循环遍历这些行,并将数量加到由
dd
值索引的不同数组中。m528fe3b2#
因为日子是独一无二的:
将产生:
bjp0bcyl3#
有许多可行的技术可以对2d数组数据进行分组和求和。
foreach()
和临时密钥:(Demo)foreach()
使用引用而不是临时结果键:(Demo)array_reduce()
和临时密钥:(Demo)array_reduce()
使用引用而不是临时键:(Demo)要对其他列值执行更多求和操作,请复制这些代码段的
else
分支中的求和操作。例如:
要按多个列进行分组,请通过将多个列值连接到单个临时字符串键中来创建“复合键”。以下是该技术的一些演示: