2010-10-02 89 views
0

嘿傢伙。我有個問題。 我有兩個不同的結構,不同的結構,我想比較值和取消設置常見的值。 第一個陣列看起來像:比較兩個不同的陣列和第一個未設置的元素

Array ([0] => Array ([key1] => value1 [key2] => value2) [1] => Array ([key1] => value3 [key2] => value4) [2] => Array ([key1] => value5 [key2] => value6) [3] => Array ([key1] => value7 [key2] => value9) [4] => Array ([key1] => value11 [key2] => value13)) 

第二陣列看起來像:

Array ([0] => value1 [1] => value3 [2] => value9) 

所以,我需要從所述第一陣列解析所有的值和與從第二元件比較所述第一密鑰陣列。 類似這樣的東西

foreach($array1 as $ar1){ 
    foreach($array2 as $ar2){ 
     if($ar1['key1'] == $ar2){ 
      unset($array1[$ar1]); 
     } 
    } 
} 

我試過了一切,但它不工作。第一個數組產生,所以我不能改變它的結構。第二個是手工製作的。 過程後,第一個數組將類似於:

Array ([2] => Array ([key1] => value5 [key2] => value6) [3] => Array ([key1] => value7 [key2] => value8)) 

幫助我的一些想法。 感謝

回答

0

試試這個:

foreach($array1 as $k => $ar1){ 
    foreach($array2 as $ar2){ 
     if($ar1['key1'] == $ar2){ 
      unset($array1[$k]); 
     } 
    } 
} 
+0

非常感謝你。 – pasker 2010-10-03 09:32:17