PHP 7 : Les nouveautés

Étudier l'opérateur de fusion null

Testez gratuitement nos 1324 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Comme l'opérateur combiné, l'opérateur de fusion null va vous aider à gagner en lignes de code. Découvrez-le ici.
04:11

Transcription

On va maintenant parler d'un nouvel opérateur encore une fois qui existe maintenant dans PHP7. La traduction française n'est pas top mais on l'appelle l'opérateur de fusion null. Pour ceux qui ont déjà fait du C, ça va vraiment être la même chose puisque c'est du dérivé, ni plus ni moins. J'explique un petit peu à quoi il va servir. D'abord on va revenir un peu en arrière de ce qu'on faisait avant. On a une fonction run avec a et b qui sont assignés. On a une $value = $a si a donc forcement ici on a un ternaire. On assignera a si $a n'est pas nul et sinon on prendra b. On savait également faire ça avec un petit if des familles : if ($a) $value = $a else $value = $b puis on fait un echo $value. Alors si on essaie ça, ici avec trois appels : null et 2, 2 et null, null et null, par exemple. On verra bien qu'au début ce sera 2 et puis après on aura une petite erreur bien sympa. On va lancer notre petit run.php pour voir ce que ça donne. Donc on a 2, 2 puis rien derrière parce qu'évidemment echo sera nul ici puisqu'on passé null et null. Ça ne pose pas vraiment de problème de faire ça, c'est vrai que c'est beaucoup de lignes de code pour pas grand chose. En réalité, ce qu'on voudrait ici, c'est dire à PHP : « la valeur sera soit a soit b, tu prends celui qui n'est pas nul dans les deux.» Eh bien, l'opérateur de fusion null nous permet de le faire très facilement en faisant simplement ça ! On va rajouter deux points d'interrogation. Il va tester les différents et puis il prendra le premier qui sera référencé. Dans le premier cas, il prendra le b, dans le deuxième cas, il prendra le 2. Si on veut voir ce que ça donne il faudrait remplacer ça par 1 et puis ça par 3. pour avoir un test un petit peu plus sympa. Si on relance, on voit bien qu'au début il prend a. Ici, il va nous prendre le 1 donc ça c'est le b plutôt, ici le b, OK ? Et la deuxième fois, il nous prend le a. 1, 3 et puis null puisque c'est null à la fin. Alors c'est génial cet opérateur car ça va nous permettre de faire plein de choses. Et notamment, plutôt que de faire des isset pour vérifier des valeurs dans un array on pourrait simplement lui demander de vérifier s'il y a quelque chose dans l'array. par exemple, array puis la valeur que vous souhaitez, en tout cas la clé. Donc là par exemple, la clé plop. Et on lui demande : tu prends plop si elle existe sinon tu prends b. Il va prendre 1, il va prendre null et ensuite null. On va mettre ici 14 et puis en dessous on va mettre 25 pour voir que ça fonctionne bien dans les deux cas en dessous. Au début, ici, on va vous dire : « attention, ça ne marche pas tout ça, tout ça. » Pourquoi ? Parce qu'on n'écrit pas les array comme ça en PHP. Il faut les écrire ici, avec des crochets. Ça c'est la notation courte, vous pouvez la notez, elle n'est pas mal celle-ci. Si vous avez envie de faire des arrays vous pouvez les déclarer comme ça. On va relancer. Au début il va nous prendre bien évidemment la valeur b, c'est-à-dire, 1. Ensuite, il va venir sur 14. Parce que c'est 14 qui est référencé. Et ensuite il va nous prendre 25 car c'est 25 qui est référencé. S'il existe plop, est-ce que cela va fonctionner ? Si plop existe et qu'on lui assigne ici plop, est-ce que du coup, il va nous prendre plop ? Oui, bien sûr. À chaque fois, parce qu' ici il va vérifier. Non seulement il va vous prendre la valeur et l'assigner mais en plus, il va vérifier. Ça c'est génial à faire ! Je vous conseille vraiment d'utiliser ce nouvel opérateur parce qu'il va vous permettre d'abord de travailler un peu plus rapidement, d'avoir moins de lignes à écrire. Puis surtout, pourquoi pas, de venir définir ici des valeurs par défauts. Si je mets default comme ça, ici, on peut les enchaîner très facilement. On va, s'il n'y a pas plop passer à b, s'il n'y a pas b passer à default Là, dans nos trois cas, on n'a pas ce cas-là mais on va le mettre ici, et puis, bien sûr, on va renommer cette clé là pour le test comme ça, on aura bien un test effectif On relance. On voit que 1 fonctionne au début, puisque c'est b. Oui, il existe dedans évidemment. Ensuite, on voit que c'est default qui est choisi. Et ensuite à la fin, c'est 25 parce que b existe aussi. Utilisez cet opérateur à bon escient. N'hésitez pas à en abuser parce qu'il est vraiment très simple à utiliser. Il va vous permettre de faire des choses très rapidement. C'est des choses que, évidemment, vous ne feriez pas de base, et vous seriez quand même obligé d'écrire pas mal de choses. Cela résout aussi pas mal de problèmes, et notamment sur l'utilisation de ternaire parce qu'on ne peut pas faire de valeur par défaut réellement dans des ternaires, à moins de refaire encore des assignations, et des vérifications derrière. Ça, ça nous permet d'aller beaucoup plus vite.

PHP 7 : Les nouveautés

Profitez des nouveautés de PHP 7. Découvrez l’amélioration des performances globales, le nouvel opérateur de comparaison, le typage des paramètres scalaires, etc.

1h07 (24 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :19 mai 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !