Testing variable equality in twig

Sam picture Sam · Nov 29, 2010 · Viewed 62.7k times · Source

In twig, is there an easy way to test the equality of 2 variables?

{% if var1 = var2 %} isn't valid, {% if var1 is sameas(var2) %} only works if both are a strings...

(from docs) "sameas checks if a variable points to the same memory address than another variable", like thats useful.

So the only way I've found of comparing integers is to convert them both to strings:
{% if var1|lower is sameas(var2|lower) %}

Answer

Russell Dias picture Russell Dias · Nov 29, 2010

As far as I'm aware Twig supports all of the standard logical operators ==, !=, <, >, >=, and <=. Also, your first example {% if var1 = var2 %} does not check for equality, it assigns var2 to var1, you might want to change it to the comparison operator ==.

The Twig sameas built in test, is essentially a strict type comparison operator ===, hence why they both need to be strings in your example.