如果我使用 Twig 表达式,例如:
{% if a and function(a) %}
with a
是假的,Twig 还评价吗function(a)
,或者表达式的计算结果为false
不评估第二部分?同样与or
.
tl;dr:如果第一部分为假,Twig 的逻辑运算符不会计算“and”表达式的第二部分,同样,如果第一部分为真,则不会计算“or”。
As zerkms指出,这可以通过使用 die 进行测试。
例如:
{% if water_is_dry and die('water_is_wet') %}
不会死,因为第一个表达式为空,是假的。
Whereas:
{% if water_is_dry or die('water_is_wet') %}
会死。
请注意,只有当您将 die 作为函数添加到 Twig 实例时,这才有效,如下所示:
$twig->addFunction(new Twig_SimpleFunction('die', 'die'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)