0

例子:

$array = array('你好', '你好', '再见');

如何检查数组中是否存在两个或多个值中的至少一个?

像:

if(in_array('hi', $array) || in_array('hello', $array)) ...

但只需一张支票?可以吗?

4

4 回答 4

6
if(count(array_intersect(array('hi','hello','bye'), $array))) {
   ...
}
于 2012-04-23T23:11:00.200 回答
1
function in_array2($ary1,$ary2){
  return count(array_intersect($ary1,$ary2)) > 0;
}

简单,利用array_intersect

于 2012-04-23T23:11:09.543 回答
1

看一下preg_grep,它将返回与预定义模式匹配的数组中的条目(例如'/^(hi|hello)$/在您的示例中)。

例如

if (count(preg_grep('^/(hi|hello)$/',$array)))
{
  // your code
}
于 2012-04-23T23:13:43.533 回答
1

使用 array_intersect()... 即

$array = array('hi', 'hello', 'bye');
if(count(array_intersect($array, array('search', 'for', 'values')))>0) ....
于 2012-04-23T23:15:08.793 回答