<?php
$array1 = array(
array('id' => 1, 'name' => 'John Doe', 'age' => 20),
array('id' => 2, 'name' => 'Mae Doe', 'age' => 17),
array('id' => 3, 'name' => 'Mark Smith', 'age' => 35),
array('id' => 4, 'name' => 'Selena Smith', 'age' => 15),
array('id' => 5, 'name' => 'Shane Doe', 'age' => 26),
array('id' => 6, 'name' => 'Will Smith', 'age' => 45)
);
$array2 = array(
array('id' => 1, 'address' => 'Singapore', 'phone_number' => '123', 'store_name' => 'ABC'),
array('id' => 4, 'address' => 'Japan', 'phone_number' => '456', 'store_name' => 'DEF'),
array('id' => 5, 'address' => 'Korea', 'phone_number' => '789', 'store_name' => 'GHI')
);
$addresses = array_column($array2, null, 'id');
foreach ($array1 as &$arr) {
if (isset($addresses[$arr['id']])) $arr = array_merge($arr, $addresses[$arr['id']]);
}
print_r($array1);
preferences:
81.45 ms | 402 KiB | 5 Q