0

我想检查数组返回中是否存在多个值(EX:,5110为真。(不使用循环)

我不使用 from 循环,因为如果返回为真,我想加载一个页面

作为:

if(in_array('5' OR '110', array('5,4,2,66,12,110'))){
    echo 'true';//Load page
}else{
    echo 'false';
}

如何?

4

3 回答 3

6
if(array_intersect(array('15', '110'), explode(',', '5,4,2,66,12,110'))){
    echo 'true';//Load a page
}else{
    echo 'false';
}
于 2013-02-17T18:31:07.830 回答
1

如果您正在寻找一种快速的方法,请使用:

if ( preg_match ( '/(^|,)(5|110)(,|$)/','5,4,2,66,12,110' ) )
  return true;
else
  return false;

编辑

if ( preg_match ( "/(^|,)(" . implode ('|', $needles ) . ")(,|$)/", implode (',', $haystack ) ) )
  return true;
else
  return false;
于 2013-02-17T18:48:48.510 回答
1
$a=array(5,4,2,66,12,110);
if(in_array('5',$a) OR in_array('10',$a )){
    echo 'true';//Load page
}else{
    echo 'false';
}
于 2013-02-17T18:30:54.857 回答