Am Ende 2020 veröffentlichte PHP Version 8.0 und führte viele aufregende neue Funktionen und Funktionen vor. Unter ihnen ist der Nullsafe -Operator eine sehr praktische neue Funktion. Es vereinfacht die Verarbeitung nullierbarer Objekte und macht den Code prägnanter und einfach zu lesen. In diesem Artikel werden wir uns darauf konzentrieren, wie der NullSafe -Operator von PHP8 und andere damit verbundene Funktionen nullbare Objekte effizient verarbeiten.
In der tatsächlichen Entwicklung ist es unvermeidlich, nullbare Objekte zu behandeln, insbesondere wenn Sie mit externen API- oder Datenbankabfragen interagieren, stellen Sie häufig Situationen auf, in denen bestimmte Felder möglicherweise null sind. Wenn der Code diese nullbaren Werte nicht ordnungsgemäß behandelt, kann er zu potenziellen Fehlern oder Ausnahmen führen. In früheren Versionen von PHP mussten wir, um Nullwertfehler zu vermeiden, eine Menge Null-Check-Logik schreiben, was zu einem langen und fehleranfälligen Code führte.
Mit der Veröffentlichung von Php 8 bietet uns die Einführung des NullSafe-Operators ( ?-> ) eine sauberere und sicherere Möglichkeit, diese Art von Problemen zu lösen. Wenn das Objekt null ist, gibt der NullSafe -Operator Null direkt zurück, ohne einen Fehler zu werfen.
NullSafe-Operator ( ?-> ) Ist eine neue Funktion in Php 8 hinzugefügt. Er ermöglicht uns automatisch, ob das Objekt beim Zugriff auf die Eigenschaften oder Aufrufmethoden des Objekts null ist. Wenn es null ist, gibt der Bediener Null zurück, anstatt einen Fehler zu werfen.
Angenommen, wir haben ein Benutzerobjekt , das eine leere Adresseigenschaft enthält. Die traditionelle Art des Schreibens könnte so aussehen:
if ($user !== null) {
if ($user->address !== null) {
echo $user->address->city;
}
}
Diese Art des Schreibens scheint langwierig und schwer zu lesen. Und mit Hilfe des NullSafe -Operators können wir den Code erheblich vereinfachen:
echo $user?->address?->city;
Durch die Verwendung des Operators ?-> müssen wir keine explizit Nullprüfungen durchführen, der Code ist prägnanter und lesbarer. Wenn $ user oder $ user-> adresse null ist, gibt der gesamte Ausdruck automatisch NULL zurück.
Zusätzlich zum NullSafe -Operator führt PHP8 auch einige andere sehr praktische Funktionen ein, um die Verarbeitung von nullbaren Objekten weiter zu vereinfachen.
NULL MERGE AUSBETRIEB ( ?? = )
Dies ist ein neuer Bediener, der in Php8 hinzugefügt wurde, wodurch die Zuordnungen zu nullbaren Objekten prägnanter werden. Bei Verwendung des Operators? Zum Beispiel:
</li>
</ol>
<p>$user->name ??= 'Unknown';<br>
Wenn $ user-> name leer ist, wird der Wert "Unbekannt" zugewiesen, andernfalls bleibt er den ursprünglichen Wert unverändert.
Null Merge Operator ( ?? )
Der ?? Der Bediener wird verwendet, um zu überprüfen, ob der Wert null ist, und bietet einen Standardwert. Wenn wir beispielsweise Standardwerte für nullbare Objekte festlegen müssen, ist es sehr bequem zu verwenden ? :
</li>
</ol>
<p>$user->address = $user->address ?? new Address();<br>
Wenn $ user-> Adresse leer ist, wird ein neues Adressobjekt erstellt.
Nullsafe -Operator von PHP 8 und andere neue Funktionen bieten eine sauberere und intuitive Möglichkeit, nullbare Objekte zu verarbeiten. Die Verwendung dieser neuen Funktionen reduziert nicht nur den langwierigen Null -Check -Code, sondern verbessert auch die Lesbarkeit und Wartbarkeit des Codes. Wenn wir diese neuen Funktionen verwenden, müssen wir natürlich noch vorsichtig sein und überbeanspruchen, um zu vermeiden, dass die Lesbarkeit und Robustheit des Codes verringert wird. Durch die rationale Anwendung dieser neuen Funktionen wird unser PHP -Code prägnanter und klarer und die Entwicklungseffizienz erheblich verbessert.