3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array1 = [ ['ID' => 1], ['ID' => 2], ['ID' => 3], ['ID' => 4], ['ID' => 5], ]; $array2 = [ ['ID' => 2, 'NUM' => 200], ['ID' => 4, 'NUM' => 400], ]; $lookup = array_column($array2, null, 'ID'); var_export( array_map( fn($row) => $row + ($lookup[$row['ID']] ?? ['NUM' => 0]), $array1 ) );

preferences:
24.39 ms | 406 KiB | 5 Q