Maison > développement back-end > tutoriel php > L'opérateur Nullsafe de PHP peut-il simplifier l'accès conditionnel aux propriétés ?

L'opérateur Nullsafe de PHP peut-il simplifier l'accès conditionnel aux propriétés ?

DDD
Libérer: 2024-12-22 13:07:11
original
478 Les gens l'ont consulté

Can PHP's Nullsafe Operator Simplify Conditional Property Access?

Exploiter l'opérateur Nullsafe de PHP pour les navigations conditionnelles

Les développeurs PHP rencontrent souvent des situations où ils doivent accéder à des propriétés ou des méthodes d'objets qui peuvent être nulles . Traditionnellement, cela nécessitait des vérifications nulles fastidieuses et une imbrication d'opérateurs ternaires pour accéder en toute sécurité aux valeurs souhaitées. Cependant, avec l'introduction de PHP 8, l'opérateur null safe (-?) améliore la lisibilité du code et réduit la verbosité associée à de telles opérations.

Question :

Est-ce que il existe une manière succincte d'écrire le code suivant en utilisant une navigation sécurisée opérateur ?

echo $data->getMyObject() != null ? $data->getMyObject()->getName() : '';
Copier après la connexion

Réponse :

Dans les versions PHP 8 et ultérieures, vous pouvez exploiter l'opérateur de sécurité nul (-?) en conjonction avec l'opérateur de fusion nul (??) pour accomplir cette tâche. Le code résultant simplifie considérablement la syntaxe :

echo $data->getMyObject()->getName() ?? '';
Copier après la connexion

En employant le -? opérateur nul sûr, la chaîne d’opérateurs est effectivement rompue si le côté gauche est nul. Cela renvoie null, permettant à l'opérateur de fusion nul de remplacer la valeur par défaut par une chaîne vide.

Comprendre l'opérateur Nullsafe (-?)

L'opérateur null safe permet programmeurs pour mettre fin de manière sélective aux chaînes d’appels de propriétés ou de méthodes à des points spécifiques. Les opérateurs qui inspectent ou interagissent avec les composants internes d'un objet sont considérés comme faisant partie de la chaîne, notamment :

  • Accès au tableau ([])
  • Accès à la propriété (->)
    * Accès à la propriété Nullsafe (?->)
    * Accès à la propriété statique (::)
    * Appel de méthode (->)
    *Appel de méthode Nullsafe (?->)
    *Appel de méthode statique (::)

Exemple :

Considérez le code suivant :

$string = $data?->getObject()->getName() . " after";
Copier après la connexion

Si $data est nul, ce code devient équivalent à :

$string = null . " after";
Copier après la connexion

Cela est dû au fait que l'opérateur de concaténation de chaînes ne fait pas partie de la chaîne et n'est pas court-circuité.

En utilisant l'opérateur null safe, les développeurs PHP peuvent gérer efficacement null valeurs dans les scénarios de navigation conditionnelle et améliorent la lisibilité et la concision de leur code.

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!

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