Curly Hosenträger in String in PHP
Was ist der Sinn des { }
(geschweifte Klammern) in string-literalen in PHP?
InformationsquelleAutor der Frage redcoder | 2010-04-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was ist der Sinn des { }
(geschweifte Klammern) in string-literalen in PHP?
InformationsquelleAutor der Frage redcoder | 2010-04-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist die komplexe (geschweifte) syntax für string-interpolation. Aus dem Handbuch:
Oft, diese syntax ist unnötig. Zum Beispiel diese:
verhält sich genau das gleiche wie dieses:
Also die geschweiften Klammern sind überflüssig. Aber diese:
wird, je nach Fehler Ebene, die entweder nicht funktionieren oder ein Fehler erzeugt, weil es keine variable mit dem Namen
$aefgh
, so dass Sie tun müssen:InformationsquelleAutor der Antwort cletus
Als für mich die geschweiften Klammern dienen als Ersatz für die Verkettung, Sie sind schneller , Typ und code sieht sauberer aus. Denken Sie daran, verwenden Sie doppelte Anführungszeichen (" ") als Inhalt wird geparst wird durch PHP, weil in einfache Anführungszeichen (' ') bekommst du den echten Namen von Variablen zur Verfügung gestellt:
InformationsquelleAutor der Antwort Kredo900
Beispiel:
Ohne geschweifte Klammern in PHP würde versuchen zu finden, eine variable mit dem Namen
$numberth
, das gibt es nicht!InformationsquelleAutor der Antwort Obiware
Habe ich fand es auch nützlich, um Zugriff auf Objekt-Attribute, wo die Attributnamen variieren von einigen iterator. Ich habe zum Beispiel verwendet das Muster für eine Reihe von Zeitspannen: Stunde, Tag, Monat.
Das gleiche Muster kann auch verwendet werden, um Zugriff auf Klassenmethoden. Einfach aufzubauen, den Namen der Methode, in der gleichen Weise, mit strings und string-Variablen.
Könnte man leicht argumentieren, um nur ein array für den Wert Lagerung von Zeitraum. Wenn diese Anwendung wurden nur PHP, ich würde Zustimmen. Ich verwenden Sie dieses Muster, wenn die class-Attribute anzeigen, um die Felder in einer Datenbanktabelle. Während es möglich ist, zum speichern von arrays in eine Datenbank mithilfe von Serialisierung, es ist ineffizient und sinnlos, wenn die einzelnen Felder müssen indiziert werden. Ich habe oft fügen Sie ein array mit den Feld-Namen, sortiert nach den iterator für das beste aus beiden Welten.
InformationsquelleAutor der Antwort Ray N. Franklin
hier ist der code habe ich aus einem wordpress-plugin
Diese wirklich nützliche Technik, die für die Formatierung von komplexen Zeichenfolgen.
InformationsquelleAutor der Antwort user1232972