如何在php中检查数组中的任何值是否存在于另一个数组中?

25
我有两个数组。
$a = array('a','b');
$b = array('a','1','2','3','4');

如何在不使用循环的情况下检查数组$a中的任何值是否存在于数组$b中?

1个回答

63
if (count(array_intersect($array1, $array2)) === 0) {
  // No values from array1 are in array 2
} else {
  // There is at least one value from array1 present in array2
}

http://php.net/manual/zh/function.array-intersect.php

值得注意的是,在所有可能性中,在幕后使用了循环。


14
但是,那个循环可能比我的循环更好。 - Dustin Graham
工作得很好,是个不错的解决方案。 - jruzafa
公平地说,如果$array1的值不在$array2中,这个语句将会继续执行。你需要取反比较运算符来判断它们中的一个是否存在。 - n18l

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接