Twig中的三元运算符php(if-then-else的简写forms)
有没有可能在树枝模板中使用三元运算符? 现在,添加一些类的DOM元素取决于一些条件,我这样做:
{%if ability.id in company_abilities%} <tr class="selected"> {%else%} <tr> {%endif%}
代替
<tr class="<?=in_array($ability->id, $company_abilities) ? 'selected' : ''?>">
在本机php模板引擎。
{{ (ability.id in company_abilities) ? 'selected' : '' }}
三元运算符logging在“ 其他运算符 ”
您可以使用Twig 1.12.0的简写语法
{{ foo ?: 'no' }} is the same as {{ foo ? foo : 'no' }} {{ foo ? 'yes' }} is the same as {{ foo ? 'yes' : '' }}
三元运算符( ?:
:)
在Twig 1.12.0中添加了对扩展三元运算符的支持。
-
情况1
片段:
{{ foo ? 'yes' : 'no' }}
评估:
如果
foo
回应yes
否则回显no
-
案例#2
片段:
{{ foo ?: 'no' }}
要么
{{ foo ? foo : 'no' }}
评估:
如果
foo
回声,否则回显no
-
案例#3
片段:
{{ foo ? 'yes' }}
要么
{{ foo ? 'yes' : '' }}
评估:
如果
foo
回应yes
否则不回应
空合并运算符( ??
)
-
情况1
片段:
{{ foo ?? 'no' }}
评估:
返回
foo
的值(如果已定义),而不是null ,否则返回
注意:这与{{ foo|default('no') }}
略有不同,因为后者也会由''
等空值触发。