Maison > développement back-end > PHP7 > Le nouvel opérateur de coalescence nul en PHP7 : Comment simplifier le jugement logique du code ?

Le nouvel opérateur de coalescence nul en PHP7 : Comment simplifier le jugement logique du code ?

PHPz
Libérer: 2023-10-24 13:00:38
original
893 Les gens l'ont consulté

Le nouvel opérateur de coalescence nul en PHP7 : Comment simplifier le jugement logique du code ?

Un opérateur très pratique a été ajouté à PHP7 : l'opérateur de coalescence nul. Cet opérateur peut être utilisé pour simplifier les jugements logiques dans le code, rendant le code plus concis et plus lisible.

Les jugements logiques traditionnels sont généralement implémentés à l'aide d'opérateurs ternaires ou d'instructions if-else. Par exemple, si l'on veut obtenir la valeur d'une variable, si la variable existe, utilisez la valeur de la variable, sinon utilisez la valeur par défaut. Avant PHP7, nous pouvions écrire du code comme celui-ci :

$value = isset($variable) ? $variable : $default;
Copier après la connexion

Un tel code semble lourd et pas assez intuitif. L'utilisation de l'opérateur de fusion nul peut rendre le code plus concis et clair :

$value = $variable ?? $default;
Copier après la connexion

Utilisez l'opérateur de fusion nul. Si $variable existe et n'est pas nul, la valeur de $variable est utilisée ; sinon, la valeur de $default est utilisée. Cette seule ligne de code suffit, réduisant considérablement la complexité du code.

En plus de simplifier les jugements logiques, l'opérateur de coalescence nul peut également être utilisé pour obtenir des valeurs dans un tableau. Par exemple, nous voulons obtenir la valeur correspondant à une clé dans le tableau. Si la clé existe, utilisez sa valeur, sinon utilisez la valeur par défaut. Avant PHP7, nous pouvions écrire du code comme ceci :

$value = isset($array['key']) ? $array['key'] : $default;
Copier après la connexion

Et en utilisant l'opérateur de fusion nul, nous pouvons écrire comme ceci :

$value = $array['key'] ?? $default;
Copier après la connexion

De même, un tel code est plus concis et clair.

null L'opérateur de fusion peut être utilisé dans plusieurs imbrications pour répondre à des exigences complexes de jugement logique et de valeur. Par exemple, nous voulons obtenir la valeur d'attribut d'un objet, mais l'attribut peut ne pas exister et l'objet lui-même peut ne pas exister. Avant PHP7, nous devions peut-être écrire du code comme celui-ci :

$value = (isset($object) && isset($object->attribute)) ? $object->attribute : $default;
Copier après la connexion

Maintenant, nous pouvons le simplifier ainsi :

$value = $object->attribute ?? $default;
Copier après la connexion

Bien sûr, si la logique imbriquée est plus complexe, nous devons toujours utiliser les instructions if-else traditionnelles pour gérer il.

Il convient de noter que l'opérateur de fusion nul détermine uniquement si la variable est nulle, et non si la variable existe ou est vide. Si vous souhaitez simplement déterminer si une variable existe ou est vide, vous devez toujours utiliser la fonction isset() ou empty().

Pour résumer, le nouvel opérateur de coalescence nul dans PHP7 peut grandement simplifier le jugement logique dans le code, rendant le code plus concis et plus facile à lire. Cependant, lors de son utilisation, vous devez faire attention aux scénarios d'utilisation et aux restrictions de l'opérateur pour éviter des erreurs inutiles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal