Heim  >  Artikel  >  Backend-Entwicklung  >  Null-Coalesce-Operator in PHP7: Wie kann die bedingte Beurteilung des Codes vereinfacht werden?

Null-Coalesce-Operator in PHP7: Wie kann die bedingte Beurteilung des Codes vereinfacht werden?

WBOY
WBOYOriginal
2023-10-20 09:18:35841Durchsuche

PHP7中的Null Coalesce运算符:如何简化代码的条件判断?

Null Coalesce-Operator in PHP7: Wie kann die bedingte Beurteilung des Codes vereinfacht werden?

Während des Entwicklungsprozesses müssen wir häufig bedingte Beurteilungen von Variablen durchführen, um festzustellen, ob sie einen Wert haben oder ob sie null sind. Der traditionelle Weg besteht darin, if-Anweisungen oder ternäre Operatoren zu verwenden, um bedingte Urteile zu treffen, aber diese Schreibweise scheint in manchen Fällen langwierig und kompliziert zu sein. Glücklicherweise wurde in PHP7 der Null Coalesce-Operator (??) eingeführt, der uns helfen kann, die Art und Weise, wie wir Code schreiben, zu vereinfachen und die Entwicklungseffizienz zu verbessern.

Der Null-Coalesce-Operator ist eine präzise Methode, um zu bestimmen, ob ein Wert null ist. Die Syntax lautet wie folgt:

$variable = $value ?? $default;

Im obigen Code ist $value die Variable, die wir beurteilen müssen, und $default ist der von uns angegebene Standardwert. Wenn $value existiert und nicht null ist, weisen Sie $variable den Wert von $value zu; andernfalls weisen Sie $variable den Wert von $default zu.

Im Folgenden werden mehrere spezifische Beispiele verwendet, um die Verwendung des Null Coalesce-Operators zu demonstrieren.

Angenommen, wir haben eine Variable $user. Wir hoffen, dass bei der Ausgabe der Name des Benutzers gedruckt wird, andernfalls wird „Unbekannt“ gedruckt. Auf herkömmliche Weise könnten wir so schreiben:

if(isset($user['name'])) {
    echo $user['name'];
} else {
    echo "Unknown";
}

Aber mit dem Null Coalesce-Operator kann dies vereinfacht werden zu:

echo $user['name'] ?? "Unknown";

Als nächstes betrachten wir ein komplexeres Beispiel. Angenommen, wir haben ein Array $products, das die Preise mehrerer Produkte enthält. Wir müssen den Gesamtpreis aller Produkte berechnen und den Gesamtpreis ausdrucken. Der traditionelle Weg könnte so geschrieben werden:

$totalPrice = 0;
foreach ($products as $product) {
    if(isset($product['price'])) {
        $totalPrice += $product['price'];
    }
}
echo $totalPrice;

Mit dem Null Coalesce-Operator kann es vereinfacht werden zu:

$totalPrice = 0;
foreach ($products as $product) {
    $totalPrice += $product['price'] ?? 0;
}
echo $totalPrice;

Wenn im obigen Code $product['price'] existiert und nicht null ist, wird $product[ ' Preis'] wird zu $totalPrice addiert; andernfalls wird standardmäßig 0 zu $totalPrice hinzugefügt. Auf diese Weise müssen wir keine if-Anweisungen mehr verwenden, um bedingte Urteile zu fällen, und der Code ist prägnanter und klarer.

Der Null Coalesce-Operator kann nicht nur für Arrays, sondern auch für Objekte und andere komplexe Datenstrukturen verwendet werden. Es kann die bedingte Beurteilung in unserem Code erheblich vereinfachen, die Codemenge reduzieren und die Entwicklungseffizienz verbessern.

Es ist zu beachten, dass Sie bei Verwendung des Null Coalesce-Operators die Priorität des Operators klar verstehen müssen. Wenn in einem Ausdruck mehrere Null-Coalesce-Operatoren verwendet werden, muss die Berechnungsreihenfolge anhand der Rangfolge der Operatoren bestimmt werden.

Zusammenfassend ist der Null Coalesce-Operator eine sehr nützliche Funktion in PHP7, die uns helfen kann, bedingte Beurteilungen und Standardwerteinstellungen im Code zu vereinfachen. Durch die rationale Verwendung des Null Coalesce-Operators können wir prägnanteren und lesbareren Code schreiben und die Entwicklungseffizienz verbessern.

Das obige ist der detaillierte Inhalt vonNull-Coalesce-Operator in PHP7: Wie kann die bedingte Beurteilung des Codes vereinfacht werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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