Ein sehr praktischer Operator wurde zu PHP7 hinzugefügt: der Null-Koaleszenzoperator. Dieser Operator kann verwendet werden, um logische Urteile im Code zu vereinfachen und den Code prägnanter und lesbarer zu machen.
Traditionelle logische Urteile werden normalerweise mithilfe von ternären Operatoren oder if-else-Anweisungen implementiert. Wenn wir beispielsweise den Wert einer Variablen erhalten möchten, verwenden Sie den Wert der Variablen, wenn die Variable vorhanden ist, andernfalls verwenden Sie den Standardwert. Vor PHP7 könnten wir Code wie diesen schreiben:
$value = isset($variable) ? $variable : $default;
Solcher Code sieht umständlich und nicht intuitiv genug aus. Durch die Verwendung des Null-Koaleszenzoperators kann der Code prägnanter und klarer gestaltet werden:
$value = $variable ?? $default;
Verwenden Sie den Null-Koaleszenzoperator. Wenn $variable vorhanden ist und nicht null ist, wird der Wert von $variable verwendet; andernfalls wird der Wert von $default verwendet. Diese eine Codezeile reicht aus und reduziert die Komplexität des Codes erheblich.
Neben der Vereinfachung logischer Urteile kann der Nullkoaleszenzoperator auch zum Erhalten von Werten in einem Array verwendet werden. Beispielsweise möchten wir den Wert erhalten, der einem Schlüssel im Array entspricht. Wenn der Schlüssel vorhanden ist, verwenden Sie seinen Wert, andernfalls verwenden Sie den Standardwert. Vor PHP7 könnten wir Code wie diesen schreiben:
$value = isset($array['key']) ? $array['key'] : $default;
Und mit dem Null-Koaleszenzoperator können wir so schreiben:
$value = $array['key'] ?? $default;
Ebenso ist solcher Code prägnanter und klarer.
null Der Zusammenführungsoperator kann in mehreren Verschachtelungen verwendet werden, um komplexe logische Beurteilungs- und Wertanforderungen zu erfüllen. Beispielsweise möchten wir den Attributwert eines Objekts abrufen, aber das Attribut existiert möglicherweise nicht und das Objekt selbst existiert möglicherweise nicht. Vor PHP7 mussten wir möglicherweise Code wie diesen schreiben:
$value = (isset($object) && isset($object->attribute)) ? $object->attribute : $default;
Jetzt können wir ihn wie folgt vereinfachen:
$value = $object->attribute ?? $default;
Wenn die verschachtelte Logik komplexer ist, müssen wir natürlich immer noch traditionelle if-else-Anweisungen verwenden, um damit umzugehen Es.
Es ist zu beachten, dass der Null-Koaleszenzoperator nur bestimmt, ob die Variable null ist, nicht, ob die Variable existiert oder leer ist. Wenn Sie lediglich feststellen möchten, ob eine Variable existiert oder leer ist, müssen Sie dennoch die Funktion isset() oder empty() verwenden.
Zusammenfassend lässt sich sagen, dass der neue Null-Koaleszenzoperator in PHP7 die logische Beurteilung im Code erheblich vereinfachen kann, wodurch der Code prägnanter und leichter lesbar wird. Bei der Verwendung müssen Sie jedoch auf die Nutzungsszenarien und Einschränkungen des Betreibers achten, um unnötige Fehler zu vermeiden.
Das obige ist der detaillierte Inhalt vonDer neue Null-Koaleszenzoperator in PHP7: Wie kann die logische Beurteilung des Codes vereinfacht werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!