Php 将数组中的相同值分组并添加
我在数组$orders中有以下内容Php 将数组中的相同值分组并添加,php,arrays,Php,Arrays,我在数组$orders中有以下内容 Array ( [0] => Array ( [ORDER_NUMBER] => 0001 [NAME] => Customer 1 [LINE_TOTAL] => 100.00 ) [1] => Array ( [ORDER_NUMBER] =>
Array
(
[0] => Array
(
[ORDER_NUMBER] => 0001
[NAME] => Customer 1
[LINE_TOTAL] => 100.00
)
[1] => Array
(
[ORDER_NUMBER] => 0001
[NAME] => Customer 1
[LINE_TOTAL] => 300.00
)
[2] => Array
(
[ORDER_NUMBER] => 0002
[NAME] => Customer 2
[LINE_TOTAL] => 550.00
)
[3] => Array
(
[ORDER_NUMBER] => 0003
[NAME] => Customer 3
[LINE_TOTAL] => 300.00
)
)
我想按订单号对它们进行分组,并将行总数加在一起,这样最终的数组将如下所示。语言是PHP
Array
(
[0] => Array
(
[ORDER_NUMBER] => 0001
[NAME] => Customer 1
[TOTAL] => 400.00 // 300 + 100 = 400
)
[1] => Array
(
[ORDER_NUMBER] => 0002
[NAME] => Customer 2
[TOTAL] => 550.00
)
[2] => Array
(
[ORDER_NUMBER] => 0003
[NAME] => Customer 3
[TOTAL] => 300.00
)
)
如果有人能帮上忙那就太好了,我尝试了一些不同的方法,但是我没有得到我想要的结果
干杯,这将循环浏览订单,并根据您的订单号将其置于关联索引下。如果已经存在一个,它会将新行_TOTAL添加到其中
$orders;
$newOrders;
foreach ($orders as $order) {
$id = $order['ORDER_NUMBER'];
if(isset($newOrders[$id])){
$newOrders[$id]['LINE_TOTAL'] += $order['LINE_TOTAL'];
} else $newOrders[$id] = $order;
}