Wie greife ich in Twig auf dynamische Variablennamen zu?

Mary-Kate Olsen
Freigeben: 2024-11-06 05:44:03
Original
954 Leute haben es durchsucht

How to Access Dynamic Variable Names in Twig?

Zugriff auf dynamische Variablennamen in Twig

Bei der Arbeit mit Arrays von Objekten in Twig ist es oft notwendig, auf Variablen mit dynamischen Namen zuzugreifen. Dies kann durch eine Kombination aus Vorlagensyntax und PHP-Funktionen erreicht werden.

Verwendung der Attributfunktion

Um auf eine Variable namens placeholder{n} zuzugreifen, wobei n eine Variable ist, können Sie die verwenden Attributfunktion:

{{ attribute(invoices, 'placeholder1') }}
Nach dem Login kopieren

Dies gibt den Wert der Variablen „Platzhalter1“ im aktuellen Rechnungsobjekt zurück.

Verwendung des Kontextarrays

Alternativ können Sie direkt auf Werte zugreifen des Kontextarrays unter Verwendung der Klammernotation:

{{ _context['placeholder' ~ id] }}
Nach dem Login kopieren

Dieser Ansatz wird im Allgemeinen bevorzugt, da er prägnanter und klarer ist. Es ist jedoch erforderlich, die Umgebungsoption strict_variables auf true zu setzen, um Laufzeitfehler beim Zugriff auf nicht vorhandene Variablen zu vermeiden.

Standardwerte bereitstellen

Wenn die Option strict_variables auf true gesetzt ist, sollten Sie die verwenden Standardfilter zur Bereitstellung eines Standardwerts für nicht vorhandene Variablen:

{{ _context['placeholder' ~ id]|default('Default value') }}
Nach dem Login kopieren

Überprüfung auf Variablenexistenz

Um zu überprüfen, ob eine Variable vor der Verwendung vorhanden ist, können Sie den definierten Test verwenden:

{% if _context['placeholder' ~ id] is defined %} ... {% endif %}
Nach dem Login kopieren

Dieser Ansatz ist ausführlicher als die Verwendung des Standardfilters, bietet aber eine explizitere Kontrolle über die Ausnahmebehandlung.

Das obige ist der detaillierte Inhalt vonWie greife ich in Twig auf dynamische Variablennamen zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!