3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr = Array ( '0' => Array ( 'emp_firstname' => 'Alistair', 'non_pm' => 'AMZ', 'sum' => 2 ), '1' => Array ( 'emp_firstname' => 'Shakkeer', 'non_pm' => 'SHK', 'sum' => 3 ), '2' => Array ( 'emp_firstname' => 'Waqas', 'non_pm' => 'WAS', 'sum' => 12 ), '3' => Array ( 'emp_firstname' => 'Zain', 'non_pm' => 'ZAI', 'sum' => 9 ), '4' => Array ( 'emp_firstname' => 'Shakkeer', 'gud_pmeditor' => 'SHK', 'sum' => 4 ), '5' => Array ( 'emp_firstname' => 'Zain', 'gud_pmeditor' => 'ZAI', 'sum' => 2 ) ); $res=[]; foreach($arr as $val){ if(array_key_exists($val['emp_firstname'], $res)) $res[$val['emp_firstname']]['sum'] = ($res[$val['emp_firstname']]['sum'] + $val['sum']); else $res[$val['emp_firstname']] = $val; } print_r(array_values($res));

preferences:
24.33 ms | 405 KiB | 5 Q