0

用 JavaScript 和 PHP 编程,是否有更短的方法在 if() 条件中包含多个选项?

我想知道是否有一种写法,例如,一种写法

if( myvar==1 || myvar==5 || myvar==7 || myvar==22 )

就像是

if( myvar==(1||5||7||22) )

有人知道这样做的方法吗?也许正则表达式?

4

3 回答 3

2

使用数组保留所有值

$os = array(1, 3, 5, 22);
if (in_array(x, $os))  
{  
   ///...  
}
于 2013-02-17T07:56:48.350 回答
2

正如维努所说。

<?php

    $array = array(1, 5, 7, 22);
    if (in_array($myvar, $array))
    {
        // my var is either 1, 5, 7 or 22
    }

?>
于 2013-02-17T07:56:56.533 回答
2

对于 javascript,您可以将所有内容添加到数组中,并且可以通过 .indexOf 检查 myvar 是否存在于数组中

if([1,5,7,22].indexOf(myvar)!=-1){
//do something
}
于 2013-02-17T07:57:39.260 回答