Maison > développement back-end > tutoriel php > Comment PHP gère-t-il les comparaisons vrai/faux avec des opérandes non booléens ?

Comment PHP gère-t-il les comparaisons vrai/faux avec des opérandes non booléens ?

DDD
Libérer: 2024-11-29 08:30:09
original
881 Les gens l'ont consulté

How Does PHP Handle True/False Comparisons with Non-Boolean Operands?

Comprendre les comparaisons vrai/faux en PHP

En PHP, comparer les valeurs vraies et fausses est un aspect fondamental de la programmation. Cependant, le comportement spécifique de ces comparaisons peut parfois prêter à confusion, en particulier lorsqu'elles impliquent des opérandes non booléens.

Gestion interne des valeurs vraies/fausses par PHP

Contrairement à certains Dans d'autres langages de programmation, PHP ne définit pas explicitement vrai comme 1 et faux comme 0. En interne, PHP utilise le concept de valeurs « vraies » et « fausses » pour déterminer le résultat booléen d'une comparaison.

Véracité et fausseté des expressions

Lors de l'évaluation d'une expression dans une instruction if ou dans tout autre contexte où une vérification conditionnelle est effectuée, PHP applique les règles suivantes :

  • Toutes les chaînes non vides, les nombres non nuls, les tableaux non vides et les objets sont considéré comme « vrai ».
  • Les valeurs suivantes sont explicitement considérées comme « fausses » :

    • faux
    • 0
    • 0,0
    • chaînes vides (y compris '0')
    • vide tableaux
    • objets sans variables membres
    • NULL
  • L'absence d'une valeur définie (variables non initialisées) est également interprétée comme "falsey".

Comment PHP reconnaît "a" comme 1

Dans l'exemple donné :

if("a"){
   echo "true";
}
Copier après la connexion

PHP interprète la chaîne "a" comme une chaîne non vide, ce qui est considéré comme véridique. Par conséquent, l'instruction if est évaluée comme vraie et "true" est renvoyé.

Notes supplémentaires

Il est important de noter que les règles de comparaison mentionnées ci-dessus s'appliquent également à opérations arithmétiques et au niveau du bit. Par exemple, si « a » est traité comme une valeur véridique, l'expression « 1 a » donnera 2, tandis que « 1 - a » donnera 0.

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!

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