2012-06-06 90 views
0

我有兩個陣列PHP比較兩個多維數組和檢查重複

$array1 = array(
    0 => array(
     'user' => 'user0', 
     'id' => 'id0' 
    ), 
    1 => array(
     'user' => 'user1', 
     'id' => 'id1' 
    ), 
    2 => array(
     'user' => 'user2', 
     'id' => 'id2' 
    ) 
); 

$array2 = array(
    0 => array(
     'emp' => 'emp0', 
     'id' => 'id3' 
    ), 
    1 => array(
     'emp' => 'emp1', 
     'id' => 'id1' 
    ), 
    2 => array(
     'emp' => 'emp2', 
     'id' => 'id2' 
    ) 
); 

我需要循環陣列2第一的d得到的id輸入從ARRAY1到陣列1和搜索是否ID1的值從arr1存在於array2中

+0

對不起,但我不明白你想在這裏實現什麼。你提到過:「...首先循環數組2,並將數組1的id從數組1輸入」。你可以試着寫一個必需輸出的例子嗎? – hade

+0

你的意思是用給定的ID來搜索這兩個數組嗎?例如,對於id =>'id1',它會產生包含用戶信息和就業信息的2個元素的數組? – hade

+0

請查看我上面的評論。 – hade

回答

0

也許這可行? (如果我正確理解你的問題)

$id_arr = array(); 
$final_arr = array(); 

checkArray($array1, $id_arr, $final_arr); 
checkArray($array2, $id_arr, $final_arr); 

function checkArray($arr, &$id_arr, &$final_arr) { 
    foreach ($arr as $key => $value) { 
    if (!in_array($value['id'], $id_arr)) { 
     $id_arr[] = $value['id']; 
     $final_arr[] = $value; 
    } 
    } 
} 

var_dump($final_arr); 
+0

不,這不是我需要的操作,實際上我在這裏修改了這個問題 – user1249796

+0

請編寫一個輸出數組的示例,以便我能夠幫助您。 – hade