<?php
$array = Array
(
'0' => Array
(
'ac_no' => 100001,
'amount' => 0.00
),
'1' => Array
(
'ac_no' => 100001,
'amount' => 51255.11
),
'2' => Array
(
'ac_no' => 100001,
'amount' => -500.00
),
'3' => Array
(
'ac_no' => 100001,
'amount' => -621.05
),
'4' => Array
(
'ac_no' => 100002,
'amount' => .00
),
'5' => Array
(
'ac_no' => 100003,
'amount' => .00
),
'6' => Array
(
'ac_no' => 100004,
'amount' => 20714.00
),
'7' => Array
(
'ac_no' => 100004,
'amount' => 0.00
)
);
$acNoWiseArray = [];
foreach($array as $arr){
$acNoWiseArray[$arr['ac_no']]['sum'][] = $arr['amount'];
}
$finalArray = [];
foreach($acNoWiseArray as $key=>&$value){
foreach($value['sum'] as $k=> $val){
$finalArray[$key]['new_sum'][] = (is_array($value)) ? array_sum(array_map('abs',$value['sum'])) : abs($value['sum'][$k]);
array_shift($value['sum']);
}
}
print_r($finalArray);
preferences:
24.43 ms | 402 KiB | 5 Q