比较2个数组php

问题描述:

我想比较两个不同的数组,并获取数组中不存在的值。这里是我的2个阵列:比较2个数组php

Array ([0] => 2fbd5868-28ec-418d-854a-0736db720c8a [1] => f4a41974-5373-4862-a5e7-9d28b8c2301f [2] => a1874f68-3da1-47c3-97ef-a68580ce2a52) 

Array ([0] => 2fbd5868-28ec-418d-854a-0736db720c8a [1] => f4a41974-5373-4862-a5e7-9d28b8c2301f [2] => a1874f68-3da1-47c3-97ef-a68580ce2a52 [3] => 583cee91-1913-4e9d-b51d-e27083420001) 

正如你可以看到第二个数组有一个额外的值。我想用户和array_diff这样的:

$result = array_diff($array1,$array2); 
print_r($result); 

然而出和array_diff的是:

array() 

任何想法是怎么回事?

随着人们建议,我已经测试开关周围的阵列,这是输出:

Array ([0] => [1] =>) 
+1

第一次读,然后use..http://php.net/manual/en/function.array-diff.php –

+0

尝试'和array_diff($数组2,$阵列1);'这将工作.. –

+0

@Coderanonymous然后我得到这个输出:Array([0] => [1] =>) – danyo

array_diff让你从$array1这是不是在其他数组中的值。你的第一个数组的所有值都在第二个。 Sou改变你的数组的顺序,你应该没问题。

参见这里:http://php.net/manual/de/function.array-diff.php

+0

同意@bish,或者你可以检查长度然后比较它们。 –

的参数在array_diff()的顺序很重要

返回包含所有从ARRAY1不在 存在于任何其它arrays2的条目的阵列

阅读array_diff

$result = array_diff($array2,$array1); 

尝试这样

+0

然后我得到这个输出:Array([0] => [1] =>) – danyo