Maison >développement back-end >tutoriel php >Comment puis-je éviter les erreurs lors de l'imbrication d'opérateurs ternaires en PHP ?
Opérateurs ternaires imbriqués en PHP : pièges et solutions
En PHP, les opérateurs ternaires offrent un moyen concis et élégant d'attribuer des valeurs de manière conditionnelle. Bien qu'ils puissent constituer un outil puissant, il est essentiel de les utiliser correctement pour éviter des résultats inattendus.
Un problème courant survient lors de l'imbrication de plusieurs opérateurs ternaires, comme le démontre le code suivant :
$province = 7; $Myprovince = ( ($province == 6) ? "city-1" : ($province == 7) ? "city-2" : ($province == 8) ? "city-3" : ($province == 30) ? "city-4" : "out of borders" );
Lors de l'exécution, ce code attribue incorrectement "city-4" à $Myprovince quelle que soit la valeur de $province. Le problème réside dans l'imbrication des opérateurs ternaires sans regroupement approprié.
Pour résoudre ce problème, il est nécessaire d'utiliser des parenthèses pour s'assurer que les opérateurs ternaires sont évalués dans le bon ordre. Le code corrigé ci-dessous :
$province = 7; $Myprovince = ( ($province == 6) ? "city-1" : (($province == 7) ? "city-2" : (($province == 8) ? "city-3" : (($province == 30) ? "city-4" : "out of borders"))) );
Avec cette modification, les opérateurs ternaires sont correctement imbriqués, et le code attribue correctement "city-2" à $Myprovince car $province est égal à 7.
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!