Heim >Backend-Entwicklung >PHP-Tutorial >Wann und warum ist die Zuweisung des Rückgabewerts von new per Referenz veraltet?
Problembeschreibung
Versuch, den Rückgabewert von new by zuzuweisen Referenz löst den PHP-Fehler „Das Zuweisen des Rückgabewerts von new per Referenz ist veraltet“ aus.
Ausführliche Erklärung
Dieser Fehler tritt auf, wenn versucht wird, das Ergebnis von zuzuweisen new (wird zum Erstellen eines neuen Objekts verwendet) in eine Variable mithilfe des Referenzoperators (&). In PHP4 wurde diese Redewendung häufig verwendet, um die Referenz eines Objekts an eine andere Variable zu übergeben. In PHP5 wurde diese Vorgehensweise jedoch aufgrund von potenziellem Missbrauch und Verwirrung abgelehnt.
Lösung
Die korrekte Syntax zum Zuweisen einer Objektreferenz lautet:
<code class="php">$variableName =& $objectName;</code>
Im bereitgestellten Beispiel sollte der Code stattdessen lauten:
<code class="php">$obj_md =& $mdb2;</code>
Zusätzlicher Hinweis
Die veraltete Redewendung weist den Rückgabewert von new direkt zu eine Variable mit dem Referenzoperator. Zum Beispiel:
<code class="php">$obj_md =& new MDB2();</code>
Diese Vorgehensweise war nicht nur in PHP5 veraltet, sondern führte auch zu unerwartetem Verhalten, wenn die Variable zuvor definiert wurde.
Um die Veraltungswarnung zu vermeiden und sicherzustellen, dass sich der Code korrekt verhält , verwenden Sie die überarbeitete Syntax mit dem =&-Operator, um Referenzen auf Objekte zuzuweisen.
Das obige ist der detaillierte Inhalt vonWann und warum ist die Zuweisung des Rückgabewerts von new per Referenz veraltet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!