3v4l.org

run code in 300+ 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.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
<pre>Array ( [0] => Array ( [number] => 21000 [id] => 3412341233214 ) [1] => Array ( [number] => 35000 [id] => 12121212121212 ) ) </pre>

preferences:
146.59 ms | 408 KiB | 5 Q