聪明 - 一个括号中的两个或更多不平等条件?

时间:2011-09-23 07:36:43

标签: smarty

这是我在smarty中的代码:

{if $cat!="1_5"} do something {/if}

如果我使用or添加其他条件:

{if $cat!="1_5" or $cat!="2_30"} do something {/if}

然后它不能以正确的方式工作。为什么?这是否可以在一个括号中使用两个或更多个不等式条件?

1 个答案:

答案 0 :(得分:5)

好吧,我们的类别 1_5 2_30

让我们看看$cat="2_30"

时if条件会发生什么
$cat!="1_5"     $cat!="2_30"                    $cat!="1_5"    $cat!="2_30"
       |         |                                    |         |
     TRUE      FALSE                                TRUE      FALSE
        \       /                                      \       /
         \     /                   but:                 \     /
          \   /                                          \   /
            OR                                             AND
            |                                               |
          TRUE                                            FALSE
     //do something                                //don't do something

所以,你明白了:)你必须使用AND而不是OR

{if $cat!="1_5" and $cat!="2_30"} do something {/if}