Подтвердить что ты не робот

Проверка равенства переменных в веточке

В twig существует ли простой способ проверить равенство 2 переменных?

{% if var1 = var2 %} недействителен, {% if var1 is sameas(var2) %} работает только в том случае, если оба являются строками...

(from docs) "sameas проверяет, указывает ли переменная на тот же адрес памяти, что и другая переменная", например, полезно.

Таким образом, единственный способ сравнения целых чисел - преобразовать их в строки:
{% if var1|lower is sameas(var2|lower) %}

4b9b3361

Ответ 1

Насколько я знаю, Twig поддерживает все стандартные логические операторы ==, !=, <, >, >=, and <=. Кроме того, ваш первый пример {% if var1 = var2 %} не проверяет равенство, он присваивает var2 var1, вы можете захотеть изменить это к оператору сравнения ==.

Встраиваемый тест Twig sameas, по сути, является оператором сравнения строгих типов ===, поэтому они оба должны быть строками в вашем примере.

Ответ 2

Если вы сравниваете значение, которое имеет числовое значение, которое вы можете использовать:

{% if (psong.songid) ==(song.id) %}