Php 多维数组中的聚合值
从一开始,我就以以下方式列出了订单:Php 多维数组中的聚合值,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,从一开始,我就以以下方式列出了订单: ( [product_id] => 1094 [total_weight] => 0.0390 [qty_ordered] => 10.0000 [category_id] => 12 ) 我想要的是根据类别id
(
[product_id] => 1094
[total_weight] => 0.0390
[qty_ordered] => 10.0000
[category_id] => 12
)
我想要的是根据类别id对总重量和订购数量的值求和
我现在使用foreach以下面的方式获得了数组。但我需要以某种方式聚合这些值
Array
(
[14] => Array
(
[0] => Array
(
[product_id] => 1099
[total_weight] => 0.0390
[qty_ordered] => 10.0000
)
[1] => Array
(
[product_id] => 1095
[total_weight] => 0.0395
[qty_ordered] => 10.0000
)
)
[12] => Array
(
[0] => Array
(
[product_id] => 1094
[total_weight] => 0.0390
[qty_ordered] => 10.0000
)
)
[15] => Array
(
[0] => Array
(
[product_id] => 742
[total_weight] => 0.1250
[qty_ordered] => 1.0000
)
)
)
因此,理想情况下,我希望输出与以下内容类似,代码越少越好:
Array
(
[14] => Array
(
[total_weight] => 0.0785
[qty_ordered] => 20.0000
)
[12] => Array
(
[total_weight] => 0.0390
[qty_ordered] => 10.0000
)
[15] => Array
(
[total_weight] => 0.1250
[qty_ordered] => 1.0000
)
)
我能用下面的方法把它分类
foreach($retval as $val) {
$return[$val['category_id']]['qty_ordered'] += $val['qty_ordered'];
$return[$val['category_id']]['row_total'] += $val['row_total'];
}
您忘记发布当前代码了