2012-07-11 107 views

回答

6

随着array_diff

$array3 = array_diff($array2, $array1); 
+1

但请注意序列:'array_diff($ array1,$ array2);'会返回一个空数组! – 2012-07-11 10:33:40

+0

@DanLee:恕我直言,这不是偷偷摸摸的一个陷阱,因为“采取差异”(例如减法)通常是一种不可交换的操作。 – Jon 2012-07-11 10:35:17

0

使用array_diff

$array3 = array_diff($array2, $array1) 
0

由于array_diff返回relative complement,您可以使用此代码为一个完整的差异,它并不重要哪一方应当成为DIFF:

$array3 = array_diff(array_merge($array1, $array2), array_intersect($array1, $array2)); 
0
$array1 = array(1,2,3,4,5); 
$array2 = array(1,2,3,4,5,6,7,8,9,10); 

$output = array_merge(array_diff($array1, $array2), array_diff($array2, $array1)); 
print_r($output); 

输出:

Array ([0] => 6 [1] => 7 [2] => 8 [3] => 9 [4] => 10)