In PHP können Sie einfache oder doppelte Anführungszeichen verwenden, um eine Zeichenfolge zu definieren. Im normalen Gebrauch gibt es keine Aufschlüsselung der Unterschiede zwischen den durch diese beiden Symbole definierten Zeichenfolgen. Heute habe ich ein paar Codezeilen als Beispiel für die „Pass-by-Reference-Zuweisung“ geschrieben. In diesem Code werden sowohl einfache als auch doppelte Anführungszeichen zum Definieren von Zeichenfolgen verwendet (bitte beachten Sie die vierte und sechste Zeile im Codeausschnitt). unten). Ausführen Dann passierte etwas Wunderbares.
$var1="ChrisMao";//Assignthevalue"ChirsMao"to$var1
$var2=&$var1;//Reference$var1via$var2
echo'Thevalueof$var2is :',$var2,"
";//$var2und $var1habendenselbenWert"ChrisMao"
$var2='mynameis$var2';//Ändern Sie $var2, gleichzeitig wurde $var1 geändert
echo' Thevalueof$var1is:',$var1,"
";//Thevalueof$var1is"mynameis$var2"
$var2="myNewnameis$var1";//Modify$var2,thesametime $var1wasmodified
echo'Thevalueof$var2is:',$var2,"
";//Thevalueof$var1is"myNewnameismynameis$var2"
echo'Thevalueof$var1is: ',$var1,"
";//Thevalueof$var1is"myNewnameismynameis$var2"
Das Bild unten ist ein Screenshot des Ausführungsergebnisses
Ich frage mich, ob Sie etwas entdeckt haben, nachdem Sie dieses Ergebnis gesehen haben. In der vierten und sechsten Zeile des Codes erscheint in der Zeichenfolge auf der rechten Seite der Zuweisungsanweisung derselbe Variablenname wie im Codesegment, mit der Ausnahme, dass in einem Satz einfache Anführungszeichen und im anderen doppelte Anführungszeichen verwendet werden. Vor der Ausführung sollte die erwartete Ausgabe darin bestehen, den Variablennamen als Zeichenfolge auszugeben, anstatt den Variablenwert auszugeben. Nach der Ausführung stellte sich jedoch heraus, dass die Ausgabe von den vorherigen Erwartungen abwich. Bei der Zuweisung mit einfachen Anführungszeichen wird der Variablenname in der Zeichenfolge so ausgegeben, wie er ist, während bei der Zuweisungsanweisung mit doppelten Anführungszeichen der Variablenname durch den tatsächlichen Wert der Variablen ersetzt und ausgegeben wird.
Öffnen Sie das Buch noch einmal mit dem Kapitel zur Erläuterung von String-Variablen, lesen Sie es sorgfältig durch und stellen Sie überraschenderweise fest, dass dieses Phänomen im Buch beschrieben wurde: Das Wichtigste an Strings in doppelten Anführungszeichen ist, dass die Variablennamen in sie werden einen Wertersatz darstellen. Es ist alles daran schuld, dass man nicht sorgfältig liest!