PHP:如果a等于b或c或d

时间:2012-07-23 11:22:59

标签: php if-statement

  

可能重复:
  Short hand to do something like: if($variable == 1 || $variable == “whatever” || $variable == '492') .

这是

if ($a==b||$a==c||$a==$d){ ... 

描述这种逻辑的最短路径。 我正在考虑像

这样的东西
if ($a==($b||$c||$d)) { ...

但这不是有效的代码。有什么建议吗?

4 个答案:

答案 0 :(得分:12)

您可以使用in_array

if( in_array($a, array($b,$c,$d)) ){
    //do something
}

答案 1 :(得分:2)

这是有效的代码,但逻辑上不正确。

如果你有很多价值观,那么你可以做这样的事情。

if(in_array($a,array($b,$c,$d))) {
}

答案 2 :(得分:1)

两者与||不同是布尔运算符,并且始终返回truefalse。因此,在第二个声明中,您要比较$atrue还是false

您可以使用in_array来比较$a

中是否存在array($b, $c, $d)

答案 3 :(得分:1)

不知道你为什么要做某种事情,但你可以把b,c,d放在数组中并调用in_array函数来搜索元素。 我仍然无法理解为什么你想简短而简单的代码简短而不简单。