多个 OR 条件未正确显示

Multiple OR conditions not showing correctly

出于某种原因,此 "OR" 语句不起作用:

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

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

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

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()