2011-11-29 63 views
45

我不能找到一種方法,有TWIG解釋下面的條件語句:如果==真或者b ==真實的陳述

{% if a == true or b == true %} 
do stuff 
{% endif %} 

我缺少的東西,或者是不可能的?

+0

And operator:'{%if a and b%} ... {%endif%} –

回答

105

檢查此Twig Reference

你能做到這麼簡單:

{% if (a or b) %} 
    ... 
{% endif %} 
+21

「或」也需要小寫 - 看起來小枝是區分大小寫的。 – Shane

+1

根據Twig的官方文檔https://twig.symfony.com/doc/2,否定此倍數:{%如果不是(a或b或c)%} ... {%endif%} – JimB814

11

比較表達式應各自在自己的括號:

{% if (a == 'foo') or (b == 'bar') %} 
    ... 
{% endif %} 

選擇,如果你正在檢查一個變量和一些可能的值:

{% if a in ['foo', 'bar', 'qux'] %} 
    ... 
{% endif %} 
+0

.x/tags/if.html – Luciano

+1

[更正](https://twigfiddle.com/vwy6vu)。我在Drupal 8中遇到了問題,不得不用表達式來包裝它。 – Tim

+0

@Tim有沒有辦法縮短以下內容? ({kind =='01')or(kind =='02')or(kind =='03')or(kind =='04')or(kind =='05')%} ' – neoDev