Heim > Backend-Entwicklung > PHP-Tutorial > Kann der Nullsafe-Operator von PHP den Zugriff auf verschachtelte Eigenschaften vereinfachen?

Kann der Nullsafe-Operator von PHP den Zugriff auf verschachtelte Eigenschaften vereinfachen?

Barbara Streisand
Freigeben: 2024-12-14 04:58:09
Original
300 Leute haben es durchsucht

Can PHP's Nullsafe Operator Simplify Nested Property Access?

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() : '';
Nach dem Login kopieren

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() ?? '';
Nach dem Login kopieren

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:

  • Array-Zugriff ([]), Eigenschaftszugriff (->), nullsicherer Eigenschaftszugriff (?->) , statischer Eigenschaftszugriff (::), Methodenaufruf (->), nullsicherer Methodenaufruf (?->) und statischer Methodenaufruf (::)

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";
Nach dem Login kopieren

In diesem Fall, wenn $data dies ist null, der Code ergibt Folgendes:

$string = null . " after";
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage