Czy Twig obsługuje operatora trójskładnikowego?
Potrzebuję logiki warunkowej, takiej jak:
{%if ability.id in company_abilities %}
<tr class="selected">
{%else%}
<tr>
{%endif%}
ale używając skrótu w Twig.
Czy Twig obsługuje operatora trójskładnikowego?
Potrzebuję logiki warunkowej, takiej jak:
{%if ability.id in company_abilities %}
<tr class="selected">
{%else%}
<tr>
{%endif%}
ale używając skrótu w Twig.
Odpowiedzi:
{{ (ability.id in company_abilities) ? 'selected' : '' }}
Operator trójskładnikowy jest udokumentowany w kategorii „ inne podmioty ”
{{ (ability.id in company_abilities) ? ability.id : '' }}
<div class="my-section {{ model.event.eventDate ? 'half' : '' }}">- chcę dodać tutaj klasę css na podstawie warunku.
Wsparcie dla rozszerzonego operatora trójskładnikowego zostało dodane w Twig 1.12.0 .
Jeśli fooecho yeselse echo no:
{{ foo ? 'yes' : 'no' }}Jeśli footo echo, w przeciwnym razie echo no:
{{ foo ?: 'no' }}
lub
{{ foo ? foo : 'no' }}Jeśli fooecho yeselse nic nie odzwierciedla:
{{ foo ? 'yes' }}
lub
{{ foo ? 'yes' : '' }}Zwraca wartość, foojeśli jest zdefiniowana i nie ma wartości null , w noprzeciwnym razie:
{{ foo ?? 'no' }}Zwraca wartość, foojeśli jest zdefiniowana ( liczą się również puste wartości), w noprzeciwnym razie:
{{ foo|default('no') }}