Além dos operadores matemáticos, de comparação e lógicos, também é possível utilizar uma série de operadores adicionais que não se enquadram nas categorias tradicionais, mas que são extremamente utilizados para complementar o código. Outros operadores suportados: |: Aplica um filtro a uma variável. Exemplo de uso:
{{ 'apple'|upper }}
{# Retorna 'APPLE' #}
~: Concatena dois valores, geralmente strings. Exemplo de uso:
{{ 'Hello, ' ~ 'World!' }}
{# Retorna 'Hello, World!' #}
.: Acessa uma propriedade ou método de um objeto, ou um elemento de um array. Exemplo de uso:
{{ order.number }}
{# Acessa a propriedade 'number' do objeto 'order' #}
[]: Acessa um elemento específico em uma sequência (array). Exemplo de uso:
{{ fruits[0] }}
{# Acessa o primeiro elemento do array 'fruits' #}
?:: Operador ternário. Retorna o valor à esquerda se for definido e não for nulo; caso contrário, retorna o valor à direita. Exemplo de uso:
{{ first_name ?: 'Guest' }}
{# Retorna 'Guest' se 'first.name' não estiver definido ou for nulo #}
??: Verifica se um valor está definido e não é nulo; caso contrário, retorna um valor padrão. Exemplo de uso:
{{ order.total_price ?? 'Valor não definido' }}
{# Retorna 'Valor não definido' se 'order.total_price' não estiver definido ou for nulo #}