以下是否有更短的方法在PHP中使用OR
?
if($cat->getId()==44 || $cat->getId()==8 || $cat->getId()==24)
例如,语法正确的方式如: -
if($cat->getId()==44, 8, 24
不使用in_array()
,因为在这种情况下,预定义类别ID并不简单。
提前致谢。
没有意识到PHP 5.4中引入的缩短的in_array()
语法,因此在服务器上升级了PHP,这非常适用于我之后的事情 - 感谢您的回答指出这一点。
答案 0 :(得分:2)
尝试有点创意。例如,您可以使用in_array()
。
经验法则: 如果您认为有更简单的方法来编写表达式,那么就有一个。
<?php
$ids = [44,8,24];
if( in_array($cat->getId(), $ids) )
{
echo "Do Something";
}
或一行:
<?php
if( in_array($cat->getId(), [44,8,24]) )
{
echo "Do Something";
}
答案 1 :(得分:2)
尝试使用in_array
-
$array = array(44, 8, 24);
if(in_array($cat->getId(), $array)) {
答案 2 :(得分:1)
在我看来,最好的方法是:
if(in_array($cat->getId(), array(44, 8, 24))
{
...
}
在较新的(5.5+)版本的PHP中,您可以使用短数组表示法,例如:
if(in_array($cat->getId(), [44, 8, 24])
{
...
}