如何检查两个数组是否包含相同的值?

如何检查两个数组是否包含相同的值?

问题描述:

I have two arrays and I have to compare them against each other:

$a = array('BRANCH','ADDRESS','MOBILE','NAME');
$b = array('BRANCH','ADDRESS','MOBILE','NAME');

$a == $b → true

But when the values are in a different order, this comparison doesn't work:

$a = array('BRANCH','ADDRESS','MOBILE','NAME');
$b = array('NAME','BRANCH','MOBILE','ADDRESS');

$a == $b → false

How do i compare these two arrays to see if both contain the same values, regardless of their order?

我有两个数组,我必须将它们相互比较: p>

  $ a = array('BRANCH','ADDRESS','MOBILE','NAME'); 
 $ b = array('BRANCH','ADDRESS','MOBILE','NAME');  
 
 $ a == $ b→true 
  code>  pre> 
 
 

但是当值的顺序​​不同时,此比较不起作用: p>

  $ a = array('BRANCH','ADDRESS','MOBILE','NAME'); 
 $ b = array('NAME','BRANCH','MOBILE'  ,'地址'); 
 
 $ a == $ b→false 
  code>  pre> 
 
 

如何比较这两个数组以查看两者是否包含相同的值 ,不管他们的订单如何? p> div>

I would do array_diff() which check difference between two arrays.

$areEqual = array_diff($a, $b) === array_diff($b, $a);

or

$areEqual = !(array_diff($a, $b) || array_diff($b, $a));

sort($a);
sort($b);
if ($a==$b) {
echo "arraysAreEqual";
}