En PHP, l'opérateur ternaire (?:) et l'opérateur de coalescence Null (??) sont utilisés de la même manière, alors quelles sont les différences entre eux ? L'article suivant vous présentera l'opérateur ternaire et l'opérateur de coalescence Null. J'espère qu'il vous sera utile.
Opérateur ternaire
L'opérateur ternaire est un opérateur conditionnel Aide à réduire le nombre. de lignes dans le codage lors de l'exécution de comparaisons et de conditions. C'est une alternative à l'utilisation des instructions if else et if else imbriquées, et l'ordre d'exécution est de gauche à droite ; c'est certainement la meilleure option pour gagner du temps. [Recommandation du didacticiel vidéo : Tutoriel PHP]
Syntaxe de base :
(条件)?(声明1):(声明2);
Dans l'opérateur ternaire, si l'instruction conditionnelle est vraie, alors l'instruction 1 sera exécutée, sinon l'instruction 2 sera exécutée.
Exemple :
<?php header("content-type:text/html;charset=utf-8"); $num = 21; print($num."是"); print ($num % 2 == 0) ? "偶数" : "奇数"; ?>
Équivalent à :
<?php header("content-type:text/html;charset=utf-8"); $num = 21; if($num % 2 == 0){ echo $num."是偶数"; } else{ echo $num."是奇数"; } ?>
Sortie :
Opérateur de fusion nul
L'opérateur de fusion nul est utilisé pour vérifier si la variable donnée est une valeur nulle et la supprimer de la personnalisation. La paire de valeurs renvoie une valeur non nulle. L'opérateur de fusion Null est principalement utilisé pour empêcher les fonctions d'objet de renvoyer des valeurs NULL au lieu de renvoyer les valeurs optimisées par défaut. Il est utilisé pour éviter les exceptions et les erreurs du compilateur.
L'ordre d'exécution est de droite à gauche ; lors de l'exécution, l'opérande de droite (non vide) sera utilisé comme valeur de retour. S'il est nul, l'opérande de gauche sera utilisé comme valeur de retour. Cela contribue à améliorer la lisibilité du code source.
Syntaxe de base :
(条件)?(声明1)?(声明2);
Remplacé par l'instruction if :
// 使用isset()函数 // 注意条件不为空 if ( isset(条件) ) { return 声明1; } else { return 声明2; }
Exemple :
<?php $num = 10; print ($num) ?? "NULL"; ?>
Sortie :
Différence entre l'opérateur ternaire et l'opérateur de coalescence nul :
● L'opérateur ternaire est associatif à gauche et l'opérateur coalescent Null est associatif à droite ;
● L'opérateur ternaire vérifie si la valeur est vraie ; et l'opérateur de coalescence Null vérifie si la valeur est Null.
● Si vous souhaitez effectuer plus d'itérations, l'opérateur de coalescence Null s'avère plus rapide que l'opérateur ternaire.
● L'opérateur de coalescence Null peut offrir une meilleure lisibilité.
Ce qui précède représente l’intégralité du contenu de cet article, j’espère qu’il sera utile à l’étude de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !
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!