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