3v4l.org

run code in 500+ PHP versions simultaneously
<?php $array = array( 0 => array( "id" => 3412341233214, "number" => 21000 ), 1 => array( "id" => 12121212121212, "number" => 18000 ), 2 => array( "id" => 12121212121212, "number" => 17000 ) ); $tmp = Array(); foreach($array as $obj) { if(!isset($tmp[$obj['id']])) { $tmp[$obj['id']] = array_merge(Array('number'=>1),$obj); continue; } $tmp[$obj['id']]['number'] += $obj['number']; } echo '<pre>'; print_r(array_values($tmp)); echo '</pre>';
Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.21, 8.5.0 - 8.5.7
<pre>Array ( [0] => Array ( [number] => 21000 [id] => 3412341233214 ) [1] => Array ( [number] => 35000 [id] => 12121212121212 ) ) </pre>

preferences:
97.73 ms | 1642 KiB | 4 Q