Une comparaison simple de l'opérateur ternaire et de l'opérateur de coalescence Null en PHP

青灯夜游
Libérer: 2023-04-05 06:30:01
original
3409 Les gens l'ont consulté

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.

Une comparaison simple de l'opérateur ternaire et de l'opérateur de coalescence Null en PHP

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);
Copier après la connexion

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) ? "偶数" : "奇数"; 
?>
Copier après la connexion

Équivalent à :

<?php 
header("content-type:text/html;charset=utf-8");  
$num = 21; 
if($num % 2 == 0){
echo $num."是偶数";
}
else{
echo $num."是奇数";
}
?>
Copier après la connexion

Sortie :

Une comparaison simple de lopérateur ternaire et de lopérateur de coalescence Null en PHP

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);
Copier après la connexion

Remplacé par l'instruction if :

// 使用isset()函数
// 注意条件不为空
if ( isset(条件) ) {   
    return 声明1;
} else {
    return 声明2;
}
Copier après la connexion

Exemple :

<?php
$num = 10; 
print ($num) ?? "NULL"; 
?>
Copier après la connexion

Sortie :

Une comparaison simple de lopérateur ternaire et de lopérateur de coalescence Null en PHP

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!

Étiquettes associées:
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