在PHP'if'语句中检查多个条件

时间:2013-04-25 16:37:16

标签: php opencart

if($this->request->get['product_id'] == (53 || 52 || 43)){
    if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product2.tpl')) {
        $this->template = $this->config->get('config_template') . '/template/product/product2.tpl';
    } else {
        $this->template = 'default/template/product/product2.tpl';
    }
} else{
    if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product.tpl')) {
        $this->template = $this->config->get('config_template') . '/template/product/product.tpl';
    } else {
        $this->template = 'default/template/product/product.tpl';
    }
}

我想要实现它,如果产品ID是535043那么......同样的事情......但我不确定它是否正确

3 个答案:

答案 0 :(得分:6)

您可以将产品ID存储在数组中,然后使用in_array()函数:

if (in_array($this->request->get['product_id'], array (53, 52, 43))) {
  

in_array - 检查数组中是否存在值

答案 1 :(得分:1)

if($this->request->get['product_id'] == (53 || 52 || 43)){

应该是:

if($this->request->get['product_id'] == 53
   || $this->request->get['product_id'] == 52
   || $this->request->get['product_id'] == 43) {

您还可以使用in_array,这会使您的代码看起来更干净,但可能会更慢。 Tim Cooper为此提供了示例代码。

答案 2 :(得分:0)

$prodId = $this->request->get['product_id'];
if($prodId == 53 || $prodId == 52 || $prodId == 43){
....