2012-03-29 100 views
0

我具有兩個陣列說,陣列映射在PHP

$array1 = array("code" => "E0089", 
       "desc" => "some description"); 

$array2 = array("code" => "Code", 
       "desc" => "Description"); 

所得陣列應,

$result = array("Code" => "E0089", 
       "Description" => "some description"); 

總之,我要地圖兩個陣列和創建第三陣列。

+1

你試過了嗎? 。 – safarov 2012-03-29 05:22:33

回答

2

簡短:array_combine()

只是用這樣的:

$result = array_combine($array2, $array1); 
+0

+1形式真棒回答:) – 2012-03-29 05:24:46

+0

非常好,但我認爲OP實際上想要映射的鍵和值,而不是依靠在陣列中的位置 – Phil 2012-03-29 05:24:59

+0

謝謝oezi .... – Avinash 2012-03-29 05:45:12

1

如果陣列已經在正確的順序:

$result = array_combine($array2, $array1); 

否則,你就需要做一些循環:

$result = array(); 
foreach ($array2 as $key => $val) 
    $result[$val] = $array1[$key]; 
+0

可能想做'array_key_exists($ key,$ array1)' – Phil 2012-03-29 05:27:47

+1

@Phil,我不反對。爲了簡潔起見,省略。必須爲OP做些事情。 ;) – Matthew 2012-03-29 05:32:06