PHP - 有没有更好的方法找到几个中的整数?

时间:2012-11-17 03:06:07

标签: php integer

目前我正在使用以下方法来确定$userlevel1020还是30

if ( in_array( $userlevel, array( 10, 20, 30 ) ) ) { 

} 

有更好的方法吗?

3 个答案:

答案 0 :(得分:4)

您已经在使用“更好的方式”了。替代方案是

if ($userlevel == 10 || $userlevel == 20 || $userlevel == 30) {

}

通常,您会编写一个基本的if语句,直到可能的值数量增加,使得该行变得太长,然后将它们移动到集合中并使用in_array

如果您知道$userlevel 总是是其中一个值,您可以简单地测试它是在上限/下限之间,但这不会短于你现在正在写它的方式。

答案 1 :(得分:3)

我认为没有“更好”的方式。这取决于您对未来发展中您希望选择的值的期望。你可以使用一个没有中断的开关。

switch ($userlevel) {
    case 10: case 20: case 30
        // ..
        break;
    default:
        // ..
}

修改

当然有  in_array解决方案带来的巨大好处。您可以将决策数组存储在变量中,并且可以从其他位置对其进行影响。

答案 2 :(得分:0)

没有更好的方法与in_array进行比较。