web-dev-qa-db-de.com

Testen der Variablengleichheit in twig

Gibt es in Zweig eine einfache Möglichkeit, die Gleichheit von 2 Variablen zu testen?

{% if var1 = var2 %} Ist nicht gültig, {% if var1 is sameas(var2) %} funktioniert nur, wenn beide Zeichenfolgen sind ...

(aus docs) "sameas prüft, ob eine Variable auf dieselbe Speicheradresse verweist wie eine andere Variable", wie das nützlich ist.

Die einzige Möglichkeit, Ganzzahlen zu vergleichen, besteht darin, beide in Zeichenfolgen zu konvertieren:
{% if var1|lower is sameas(var2|lower) %}

39
Sam

Soweit mir bekannt ist, unterstützt Twig alle logischen Standardoperatoren ==, !=, <, >, >=, and <=. Auch Ihr erstes Beispiel {% if var1 = var2 %} Prüft nicht auf Gleichheit, sondern weist var2 Zu var1, Möchten Sie möglicherweise den Vergleichsoperator == Ändern.

Der eingebaute Test Twig sameas ist im Wesentlichen ein strenger Typvergleichsoperator ===, Weshalb beide in Ihrem Beispiel Zeichenfolgen sein müssen.

66
Russell Dias

Wenn Sie einen Wert mit einem numerischen Wert vergleichen, können Sie Folgendes verwenden:

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