Aktueller Standort: Startseite> Neueste Artikel> PHP-Fehler: Die nicht variable Referenzlösung kann nicht zugewiesen werden

PHP-Fehler: Die nicht variable Referenzlösung kann nicht zugewiesen werden

gitbox 2025-06-16

1. Lösen Sie den Fehler der Unfähigkeit von PHP, nicht variable Referenzen neu zuzuweisen

Wenn Sie in PHP versuchen, eine nicht variable Referenz neu zuzuweisen, können Sie auf eine Fehlermeldung wie "Sie können $ foo nicht neu zuordnen, nicht auf eine Variablenreferenz" begegnen. Dies zeigt an, dass Sie versuchen, einen Verweis auf einen nicht variablen Typinhalt zuzuweisen, wodurch PHP einen Fehler meldet und die Programmausführung beendet. Dieser Artikel hilft Ihnen dabei, dieses Problem zu verstehen und zu lösen und sicherzustellen, dass Sie den Zitiermechanismus korrekt verwenden können.

2. Grundlagen zitieren

 
  $a = 10;
  $b = &$a;
  $b = 5; // $a is now 5

Im obigen Code wird $ A einen Wert von 10 zugewiesen, und wir haben $ B auf die Referenz von $ a gesetzt. Auf diese Weise ändert sich auch der Wert von $ A, wenn $ B geändert wird, ebenfalls entsprechend.

3.1 Gründe für Referenzfehler, die für Nicht-Variablen nicht zugewiesen werden können

Wenn Sie bei der Verwendung von Referenzen in PHP versuchen, eine Referenz auf einen konstanten oder anderen unveränderlichen Datentyp zuzuweisen, stoßen Sie auf den Fehler "Eine nicht variable Referenz nicht neu zuzuweisen. Der folgende Code zeigt dies:

 
  $a = 10;
  $b = 20;
  $c = &$a;
  $c = $b; // Error: Cannot reassign reference
  $d = &$c;
  $d = 30;
  echo $a; // Outputs: 30
  echo $b; // Outputs: 20

Dieser Code zeigt, dass der PHP einen Fehler verursacht, wenn wir versuchen, der referenzierten Variablen ($ C) eine nicht referenzierte Variable ($ B) der referenzierten Variablen ($ C) zuzuweisen. Dieses Problem wird dazu führen, dass das Programm die Ausführung beendet.

3.2 Lösung

Um diesen Fehler zu beheben, stellen Sie zunächst sicher, dass Sie die Variable deklarieren, bevor Sie sich darauf beziehen. Wenn auf eine nicht deklarierte Variable verwiesen wird, gibt PHP einen tödlichen Fehler zurück. Darüber hinaus wird das "&" -Symbol verwendet, um die Referenzvariable darzustellen, um ihre Veränderbarkeit zu gewährleisten. Hier ist ein geänderter Code -Beispiel:

 
  $a = 10;
  $b = 20;
  $c = &$a;
  $c = $b;
  $d = &$c;
  $d = 30;
  echo $a; // Outputs: 30
  echo $b; // Outputs: 20

In diesem geänderten Code werden Referenzen korrekt verwendet und Variablen vor der Verwendung deklariert, wodurch Fehler vermieden werden.

4. Schlussfolgerung

Mit der Referenzfunktion in PHP können wir den Wert derselben Variablen an mehreren Stellen direkt ändern. Bei Verwendung von Referenzen ist jedoch sicherzustellen, dass die Variable korrekt definiert ist und dass der Betrieb der Referenzzuweisung die Syntaxregeln von PHP folgt. Durch die Einführung dieses Artikels glaube ich, dass Sie den Fehler "Nichtübereinstimmungsvermögen nicht neu zuweisen können" effektiv vermeiden und effizienter und stabilerer PHP-Code schreiben können.