3v4l.org

run code in 300+ PHP versions simultaneously
<?php $myarray = [ [ 'messageId' => '5ACE9D8841', 'sender' => 'john@doe.com' ], [ 'messageId' => '7EE67D8170', 'sender' => 'dan@doe.com' ], [ 'messageId' => '8095FD8836', 'sender' => 'cat@doe.com' ], [ 'messageId' => '7EE67D8170', 'dest' => 'mitch@doe.com', 'status' => 'sent', 'date' => '2021-02-01 11:06:55' ] ]; $result = []; foreach ($myarray as $row) { if (!isset($result[$row['messageId']])) { $result[$row['messageId']] = $row; } else { $result[$row['messageId']] += $row; } } var_export(array_values($result));

preferences:
25.99 ms | 405 KiB | 5 Q