Twig Operators

Operators let you perform operations like comparison , containment , logic , math , or tests .

The operator precedence is as follows, with the lowest-precedence operators listed first: b-and, b-xor, b-or, or, and, ==, !=, <, >, >=, <=, in, matches, starts with, ends with, .., +, -, ~, *, /, //, %, is, **, |, and [ ]

Miscellaneous operators

There are a few operators that don't fit into a category. 

OperatorDescription
|
..
~
?:
??

Comparison

The following comparison operators are supported in any expression: ==, !=, <, >, >=, and <=.

You can also check if a string starts with or ends with another string or use a regular expression.

If you are comparing one variable to another you would use the following syntax:

{% if variableA == variableB %}
{% endif %}

Note that both variables are referenced by their name only, quotes are not used, and {}} is not used.

OperatorDescription
==
!=
<
<=
>
>=
starts with
ends with
matches

Containment

The in operator lets you see if the left value is contained in the right value.

OperatorDescription
in

Logic

You can combine multiple expressions with the following operators. These are typically done with the if tag. 

Operators are case sensitive.

Twig also support bitwise operators (b-and, b-xor, and b-or).

OperatorDescription
and
&&
or
||
not

Math

Twig allows you to calculate with values.  The following operators are supported.

OperatorDescription
+
-
/
%
//
*
**

Tests

The is operator performs tests. Tests can be used to test a variable against a common expression. The right operand is name of the test. See the Tests page for a full list of available tests.

OperatorDescription
is