2014-05-09 132 views
-1

我有這樣2個數組輸入:和如何從PHP中的數組中獲得唯一值?

$array1 = [1,2,3,4,6]; 
$array2 = [1,3]; 
$output = array_merge(array_diff($array1,$array2),array_diff($array2,$array1)); 

現在我想要查詢ARRAY1與陣列2和消除1 $array1

3和我期待的輸出是

$output = [2,4,6]; 

但在這種方法中,我得到一些錯誤,當array2有單一值,例如:$array2 = [1];,$array1 = [1,2,3,4,6];輸出應該是$output = [2,3,4,6];。但我正在逐漸$array1所有值[1,2,3,4,6];

回答

7

簡單:)

(只是取消複雜的代碼,你不需要爲任何新的東西)

<?php 
$array1 = array(1,2,3,4,6); 
$array2 = array(1,3); 
$result = array_diff($array1, $array2); 
print_r($result); 
?> 

Demo

在你的風格,它甚至可以是一個班輪:P

<?php print_r(array_diff(array(1,2,3,4,6), array(1,3))); ?> 
+0

:D謝謝<3 @hanky – user3419304

+0

非常歡迎您。看到編輯:) –