In PHP) können wir mit der Funktion array_key_exists()
prüfen, ob ein Schlüssel in einem Array existiert.
In der Template-Sprache Twig) können wir überprüfen, ob eine Variable oder eine Objekteigenschaft vorhanden ist, indem wir einfach eine if
-Anweisung wie diese verwenden:
{% if app.user %}
do something here
{% else %}
do something else
{% endif %}
Aber wie prüfen wir mit Twig, ob ein Schlüssel eines Array existiert? Ich habe es versucht {% if array.key %}
, aber es gibt mir einen Fehler:
Key "key" for array with keys "0, 1, 2, 3...648" does not exist
Da eine der wichtigsten Methoden zum Übertragen von Daten in eine Vorlage die Verwendung von Arrays ist, sollte dies auf irgendeine Weise erfolgen. Irgendwelche Gedanken?
Zweig Beispiel:
{% if array.key is defined %}
// do something
{% else %}
// do something else
{% endif %}
Sie können die Funktion keys
twig verwenden
{% if myVar in someOtherArray|keys %}
default
erledigt werden.default
.default
verwenden.default
fängt alle Ausnahmen aufgrund einer nicht definierten Variablen ab und ermöglicht das Ersetzen eines alternativen Werts durch Kurzschluss.default
ist verkettbar.{# - ************************************** *** Testen auf einen einzelnen Schlüssel in einem assoziativen Array - #} {% - setze mystring = myarray ['key-no-existo'] | default ('__ BLANK__ ') -%} {# - ********************************* ******** Testen auf mehrere Schlüssel in einem assoziativen Array - #} {% - setze mystring = myarray ['alpha'] | default (myarray ['bravo']) | default (myarray ['charlie']) | default ('__ BLANK __') -%}