例子:
$array = array('你好', '你好', '再见');
如何检查数组中是否存在两个或多个值中的至少一个?
像:
if(in_array('hi', $array) || in_array('hello', $array)) ...
但只需一张支票?可以吗?
if(count(array_intersect(array('hi','hello','bye'), $array))) {
...
}
function in_array2($ary1,$ary2){
return count(array_intersect($ary1,$ary2)) > 0;
}
简单,利用array_intersect。
看一下preg_grep,它将返回与预定义模式匹配的数组中的条目(例如'/^(hi|hello)$/
在您的示例中)。
例如
if (count(preg_grep('^/(hi|hello)$/',$array)))
{
// your code
}
使用 array_intersect()... 即
$array = array('hi', 'hello', 'bye');
if(count(array_intersect($array, array('search', 'for', 'values')))>0) ....