Maison > Article > développement back-end > La condition Yoda, en PHP, qu'est-ce que c'est ?
En faisant défiler le code, vous pourriez rencontrer quelque chose comme ceci si (1 === $var).
Quelle pourrait être la différence entre if ($var === 1) et if (1 === $var) ?
Il faut savoir qu’il n’y a pas de différence de fonctionnalité entre les deux approches. Alors, pourquoi diable utiliseriez-vous une condition Yoda pour écrire des conditions ?
Lors de la rédaction d'une instruction if, il est possible que vous ayez manqué certains signes égal. Le problème, c'est quand vous vous retrouvez avec quelque chose comme ceci :
if ($var = 1) { // Instead of $var === 1 // Do something }
Que se passe-t-il ici ?
Aucune erreur n'est détectée car ce code est valide. Le problème est que cela ne fonctionne pas comme prévu : la variable est affectée à la valeur 1, aucune comparaison n'est effectuée et c'est toujours vrai.
C'est là que la condition Yoda est utile ; avec le même cas, on obtient :
if (1 = $var) { // Instead of 1 === $var // Do something }
Ici, nous avons également raté quelques égaux mais le code n'est pas valide et, cette fois, nous obtenons une erreur puisque ce n'est pas valide.
Nous avons vu que le seul but de la condition Yoda est d'éviter une affectation accidentelle, ce qui se fait au prix d'une moins grande lisibilité.
Faut-il l'utiliser ? Pourquoi pas ! Mais gardez à l’esprit que cela n’améliorera en rien votre code.
Cela peut également aider à se montrer flexible lors d'une soirée avec des développeurs (ce qui n'arrive pas si souvent d'ailleurs).
Pour votre lecture, merci ! ?
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!