原数组$all_bill_deduct:
array (size=4)
0 =>
array (size=2)
'bill_no' => string 'plockbill_202007013' (length=19)
'deduct_amount' => string '1.00' (length=4)
1 =>
array (size=2)
'bill_no' => string 'plockbill_202007014' (length=19)
'deduct_amount' => string '3.00' (length=4)
2 =>
array (size=2)
'bill_no' => string 'plockbill_202007013' (length=19)
'deduct_amount' => string '2.00' (length=4)
3 =>
array (size=2)
'bill_no' => string 'plockbill_202007014' (length=19)
'deduct_amount' => string '6.00' (length=4)
需要按相同单号(plockbill_202007013,plockbill_202007014)分组后求各自的总金额:
$all_bill_deduct_set = [];
$result = array();
foreach($all_bill_deduct as $key => $val){
$result[$val['bill_no']][] = $val['deduct_amount'];
$all_bill_deduct_set[$val['bill_no']]['all_deduct_amount'] = array_sum($result[$val['bill_no']]);
}
结果:
array (size=2)
'plockbill_202007013' =>
array (size=1)
'all_deduct_amount' => float 3
'plockbill_202007014' =>
array (size=1)
'all_deduct_amount' => float 9