2014-10-10 35 views
1

我有兩個關聯數組如下PHP關聯數組交叉口返回兩個元件而不是一個

Array 
(

    [0] => Array 
     (
      [description] => aaaaaa 
      [value] => 11111 
      [id] => 14 
     ) 

    [1] => Array 
     (
      [description] => dddddd 
      [value] => 44444 
      [id] => 0 
     ) 

) 




Array 
(

    [0] => Array 
     (
      [id] => 14 
      [value] => 11111 
      [description] => aaaaaa 
     ) 

    [1] => Array 
     (
      [id] => 15 
      [value] => 222222 
      [description] => bbbbbb 
     ) 

    [2] => Array 
     (
      [id] => 16 
      [value] => 333333 
      [description] => cccccc 
     ) 

) 

我正的結果是

Array 
(

    [0] => Array 
     (
      [description] => aaaaaa 
      [value] => 11111 
      [id] => 14 
     ) 

    [1] => Array 
     (
      [description] => dddddd 
      [value] => 44444 
      [id] => 0 
     ) 

) 

注意到dddd是第一陣列中可用,但不是第二個。

我正在使用array_intersect_assoc($array1, $array2)函數。 請幫忙。這是不符合邏輯的所有返回這樣的結果

+0

很明顯你想在這裏實現什麼,這個函數「array_intersect_assoc」計算帶有附加索引檢查的關聯數組的交集。更進一步,我看到那裏是多維數組,只需要注意 – Mubo 2014-10-10 10:45:34

+0

@mubo他需要從兩個數組 – 2014-10-10 10:49:15

+0

@sasikanth正確地獲取重複記錄!只有重複,也許它是失去它,因爲它是一個多維數組比較 – f0unix 2014-10-10 10:53:00

回答

0

下面的代碼

$intersect = array_uintersect($arr1, $arr2, 'compareDeepValue'); 
print_r($intersect); 

function compareDeepValue($val1, $val2) 
{ 
    return strcmp($val1['value'], $val2['value']); 
} 
0

使用如果您將使PHP的通知,你會看到你的問題未來

Notice: Array to string conversion 

你可以得到詳盡的答覆here

祝你好運!

相關問題