if
Оператор if в Twig аналогичен оператору if в PHP.
В самом простом виде его можно использовать для проверки, вычисляет ли выражение значение true:
{% if online == false %}
<p>Our website is in maintenance mode. Please, come back later.</p>
{% endif %}
Вы также можете проверить, не пуст ли массив:
{% if users %}
<ul>
{% for user in users %}
<li>{{ user.username|e }}</li>
{% endfor %}
</ul>
{% endif %}
Примечание
Если вы хотите проверить, определена ли переменная, используйте if users is
defined вместо этого.
Также вы можете использовать not для проверки значений, которые вычисляются в false:
{% if not user.subscribed %}
<p>You are not subscribed to our mailing list.</p>
{% endif %}
Для нескольких условий можно использовать and и or:
{% if temperature > 18 and temperature < 27 %}
<p>It's a nice day for a walk in the park.</p>
{% endif %}
Для нескольких ветвей elseif и else можно использовать, как и в PHP. Там также можно использовать более сложные expressions:
{% if product.stock > 10 %}
Available
{% elseif product.stock > 0 %}
Only {{ product.stock }} left!
{% else %}
Sold-out!
{% endif %}
Примечание
Правила определения, является ли выражение true или false такие же, как и в PHP; вот правила для граничных случаев:
| Значение | Булево значение |
|---|---|
| пустая строка | false |
| числовой ноль | false |
| NAN (Не число) | true |
| INF (Бесконечность) | true |
| строка, содержащая только пробелы | true |
| строка “0” или ‘0’ | false |
| пустой массив | false |
| null | false |
| непустой массив | true |
| объект | true |
© 2009–2018 by the Twig Team
Licensed under the three clause BSD license.
The Twig logo is © 2010–2020 Symfony
https://twig.symfony.com/doc/3.x/tags/if.html