按名稱鍵入的臨時數組存儲來自前兩個數組的值。然後,將臨時數組複製到一個最終的數字數組鍵:
$arr1 = array ('Jonah' => 27, 'Bianca' => 32);
$arr2 = array ('Jonah' => 2, 'Bianca' => 7);
$tmp = array();
// Using the first array, create array keys to $tmp based on
// the name, and holding the age...
foreach ($arr1 as $name => $age) {
$tmp[$name] = array('name' => $name, 'age' => $age);
}
// Then add the number from the second array
// to the array identified by $name inside $tmp
foreach ($arr2 as $name => $num) {
$tmp[$name]['number'] = $num;
}
// Final array indexed numerically:
$output = array_values($tmp);
print_r($output);
Array
(
[0] => Array
(
[name] => Jonah
[age] => 27
[number] => 2
)
[1] => Array
(
[name] => Bianca
[age] => 32
[number] => 7
)
)
注意:複製陣列,使其數值並不是必需的,如果你確定你的輸出數組被鍵入的最後一步按名字。在這種情況下,$tmp
是最終產品。
那你試試? – Cfreak 2012-02-11 22:46:38