Heim > Artikel > Backend-Entwicklung > Was verursacht einen „schwerwiegenden PHP-Fehler: Adressierung leerer Eigenschaften' und wie kann man ihn vermeiden?
Wenn in PHP der Fehler „Schwerwiegender Fehler: Zugriff auf leere Eigenschaft nicht möglich“ auftritt, sind Programmierer zunächst möglicherweise ratlos. Um das Problem zu klären, untersuchen wir den Kontext hinter diesem Fehler.
Der Fehler tritt auf, wenn versucht wird, auf eine nicht vorhandene Eigenschaft eines Objekts zuzugreifen. Betrachten Sie den folgenden Code:
<code class="php">class MyClass { var $my_value = array(); function set_value ($value) { $this->$my_value = $value; // Here lies the issue } }</code>
Der Fehler tritt auf, wenn auf die Eigenschaft „$my_value“ mit dem Befehl „$this->“ zugegriffen wird. Variable. Anstatt auf die eigentliche Eigenschaft mit dem Namen „$my_value“ zu verweisen, wird versehentlich einer Eigenschaft mit dem in „$my_value“ gespeicherten Namen ein Wert zugewiesen. Dies führt wiederum dazu, dass versucht wird, auf eine leere Eigenschaft zuzugreifen.
Die korrekte Syntax zum Zuweisen eines Werts zur Eigenschaft „$my_value“ sollte wie folgt lauten:
<code class="php">$this->my_value = $value;</code>
Um solche Fallstricke zu vermeiden, sollten Sie bedenken Best Practices anwenden:
Das obige ist der detaillierte Inhalt vonWas verursacht einen „schwerwiegenden PHP-Fehler: Adressierung leerer Eigenschaften' und wie kann man ihn vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!