Einführung des Nullsafe-Operators in PHP
Der Nullsafe-Operator (?->) ermöglicht Entwicklern das Schreiben von Code, der sicher auf Objekteigenschaften zugreift und Methoden, ohne dass explizite Nullprüfungen erforderlich sind. Dies vereinfacht den Code und verbessert die Lesbarkeit, insbesondere in komplexen Objekthierarchien.
Abfrage
Können wir die folgende Anweisung mit dem Nullsafe-Operator umschreiben?
echo $data->getMyObject() != null ? $data->getMyObject()->getName() : '';
Antwort
Ab PHP 8 können wir das nutzen nullsafe-Operator in Verbindung mit dem Null-Koaleszenzoperator (?), um das gewünschte Verhalten zu erreichen.
Lösung
echo $data->getMyObject()?->getName() ?? '';
Das ?-> Der Operator unterbricht die Operatorkette, wenn er auf einen Nullwert stößt, gibt effektiv Null zurück und beendet den Ausdruck. Operatoren, die Objekteigenschaften prüfen oder Methoden aufrufen, gelten als Teil der Kette, einschließlich:
Zusätzlich Wenn nachfolgende Operatoren in der Kette nicht als Teil der Kette betrachtet werden (z. B. der Verkettungsoperator im Beispiel unten), werden sie nicht kurzgeschlossen:
$string = $data?->getObject()->getName() . " after";
In diesem Fall, wenn $data dies ist null, der Code ergibt Folgendes:
$string = null . " after";
Das obige ist der detaillierte Inhalt vonKann der Nullsafe-Operator von PHP den Zugriff auf verschachtelte Eigenschaften vereinfachen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!