PHP:如果条件比较,很多

时间:2019-02-07 09:00:01

标签: php if-statement compare

我必须检查“ id”是否在15个不同的值附近。...

if($value->id==1 or $value->id==2 or $value->id==3 or $value->id==4 etc etc....)

什么是更好/更短的方法?...

3 个答案:

答案 0 :(得分:2)

我认为您可以使用数组和in_array方法:

$acceptableValues = [1, 2, 3, 4, 5];

if (in_array($value->id, $acceptableValues)) {

}

您始终可以通过将第三个参数指定为true来强制进行严格的验证,这意味着值的值和类型必须相同:

$acceptableValues = [1, 2, 3, 4, 5];

if (in_array((int) $value->id, $acceptableValues, true)) {

}

答案 1 :(得分:2)

您有两种选择来检查多个条件

1

echo in_array($var, array('abc', 'def', 'hij', 'klm', 'nop'))? 'yes': 'no';

2

 $test_array = ('test1','test2', 'test3','test4');
    for($i = 0; $i < count($test_array); $i++){
       if($test_value == $test_array[$i]){
           $ret_val = true;
           break;
       }
       else{
           $ret_val = false;
       }
    }

答案 2 :(得分:0)

将该值保存在单独的数组中,然后检查

if( in_array($value->id, $idArray)