3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array_a = [ ['A', 0, 1047], ['B', 0, 279], ['C', 0, 68], ['D', 0, 4], ]; $array_b = [ ['A', 76, 0], ['B', 170, 0], ['E', 287, 0], ['C', 15, 0], ['D', 210, 0], ]; foreach (array_merge($array_a, $array_b) as $row) { if (!isset($result[$row[0]])) { $result[$row[0]] = $row; } else { $result[$row[0]][1] += $row[1]; $result[$row[0]][2] += $row[2]; } } var_export(array_values($result));
Output for 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.26, 8.4.1 - 8.4.13
array ( 0 => array ( 0 => 'A', 1 => 76, 2 => 1047, ), 1 => array ( 0 => 'B', 1 => 170, 2 => 279, ), 2 => array ( 0 => 'C', 1 => 15, 2 => 68, ), 3 => array ( 0 => 'D', 1 => 210, 2 => 4, ), 4 => array ( 0 => 'E', 1 => 287, 2 => 0, ), )

preferences:
135.85 ms | 408 KiB | 5 Q