多个OR条件未正确显示

时间:2018-02-13 10:22:36

标签: php joomla virtuemart

由于某种原因,这个“OR”语句不起作用:

if($product->virtuemart_product_id != 153 || 170 || 171 || 195 || 208){
    //code here
}

当我只使用一个ID时,它可以工作,但是当我添加许多ID时它不起作用。什么想法可能是错的?

1 个答案:

答案 0 :(得分:2)

你做错了。正确的方法是:

if($product->virtuemart_product_id != 153 ||
   $product->virtuemart_product_id != 170 || 
   $product->virtuemart_product_id != 171 || 
   $product->virtuemart_product_id != 195 ||
   $product->virtuemart_product_id != 208)

看起来很乱,但这是做到这一点的方法。

更清洁的方法是:

$arr = [153,170,171,195,208];
if( ! in_array($product->virtuemart_product_id, $arr) )

详细了解in_array()