3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ [ 121 => [ "number" => 121, "name" => "Some Name 1", "value" => "2.222" ], 116 => [ "number" => 116, "name" => "Some Name 2", "value" => "1.111" ], 1 => [ "number" => 1, "name" => "Some Name 3", "value" => "1.232" ] ], [ 121 => [ "number" => 121, "name" => "Some Name 1", "value" => "1.111" ], 116 => [ "number" => 116, "name" => "Some Name 2", "value" => "2.222" ], 1 => [ "number" => 1, "name" => "Some Name 3", "value" => "3.111" ] ] ]; $result = []; foreach ($array as $group) { foreach ($group as $key => $row) { if (!isset($result[$key])) { $result[$key] = $row; } else { $result[$key]['value'] += $row['value']; } } } var_export($result);
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
array ( 121 => array ( 'number' => 121, 'name' => 'Some Name 1', 'value' => 3.333, ), 116 => array ( 'number' => 116, 'name' => 'Some Name 2', 'value' => 3.333, ), 1 => array ( 'number' => 1, 'name' => 'Some Name 3', 'value' => 4.343, ), )

preferences:
85.08 ms | 402 KiB | 117 Q