我有2列如下:PHP結合2個陣列在一個單一的一個
array1: 1 => andrew 2 => Colin ... and array2: 1 => Helen 2 => Angela ....
我想知道我可以將它們組合起來,導致像安德魯=>海倫。我試過array_intersect_key($ arrat1,array_fill_keys($ arrat2,NULL));但遺憾的是它並沒有因爲事實上我有PHP 5.1工作,這需要PHP 5.2
我有2列如下:PHP結合2個陣列在一個單一的一個
array1: 1 => andrew 2 => Colin ... and array2: 1 => Helen 2 => Angela ....
我想知道我可以將它們組合起來,導致像安德魯=>海倫。我試過array_intersect_key($ arrat1,array_fill_keys($ arrat2,NULL));但遺憾的是它並沒有因爲事實上我有PHP 5.1工作,這需要PHP 5.2
使用array_combine()
,通過你的第一個數組作爲鍵陣列,和你的第二個數組作爲值的數組:
$combined = array_combine($array1, $array2);
請注意,您的數組必須具有相等的長度或功能將不起作用。
$new_array = array();
foreach ($array1 as $k => $v) {
$new_array[$v] = $array2[$k];
}
試試這個功能array_merge()
?
與foreach循環就做: - 如果你真的這樣做有那些數字索引,它可能不是 -
$result = array();
foreach($array1 as $id => $v) {
$result[$v] = $array2[$id];
}
這應該工作,但在那種情況下,你可以這樣做:$合併= array_combine(array_values( $ array1),array_values($ array2)); – 2011-02-24 12:29:10
@Stephen Orr:'array_combine()'會忽略索引,以維護相應排序輸入數組所需的順序。 – BoltClock 2011-02-24 12:31:54
我沒有意識到!我已經使用'array_combine()'一點點,但從來沒有遇到過。 – 2011-02-24 12:34:11