Built-in Tests¶
divisibleby
¶
divisibleby
checks if a variable is divisible by a number:
{% if loop.index is divisibleby(3) %}
sameas
¶
sameas
checks if a variable points to the same memory address than another
variable:
{% if foo.attribute is sameas(false) %}
the foo attribute really is the ``false`` PHP value
{% endif %}
constant
¶
constant
checks if a variable has the exact same value as a constant. You
can use either global constants or class constants:
{% if post.status is constant('Post::PUBLISHED') %}
the status attribute is exactly the same as Post::PUBLISHED
{% endif %}
defined
¶
defined
checks if a variable is defined in the current context. This is very
useful if you use the strict_variables
option:
{# defined works with variable names #}
{% if foo is defined %}
...
{% endif %}
{# and attributes on variables names #}
{% if foo.bar is defined %}
...
{% endif %}
empty
¶
empty
checks if a variable is empty:
{# evaluates to true if the foo variable is null, false, or the empty string #}
{% if foo is empty %}
...
{% endif %}