Maison > développement back-end > tutoriel php > Pourquoi la comparaison d'une chaîne à 0 en PHP renvoie-t-elle parfois True ?

Pourquoi la comparaison d'une chaîne à 0 en PHP renvoie-t-elle parfois True ?

Patricia Arquette
Libérer: 2024-12-16 01:30:09
original
712 Les gens l'ont consulté

Why Does Comparing a String to 0 in PHP Sometimes Return True?

Comparer une chaîne à un entier : comprendre les résultats inattendus

En PHP, comparer une chaîne à un entier peut donner des résultats inattendus. Plus précisément, comparer une chaîne contenant uniquement des chiffres à l'entier 0 peut être évalué comme vrai, même si cela semble incorrect.

Explication du comportement

Comme indiqué dans le PHP Manuel, lorsqu'une chaîne est évaluée dans un contexte numérique, elle est convertie en nombre en fonction des caractères qu'elle contient. Si la chaîne contient un point décimal, un exposant ou un format numérique valide, elle est évaluée comme un flottant. Cependant, s'il ne contient que des chiffres, il est évalué comme un entier.

Dans le cas de la chaîne "d85d1d81b25614a3504a3d5601a9cb2e", elle ne contient que des chiffres. Par conséquent, lorsqu'elle est comparée à l'entier 0, la chaîne est d'abord convertie en entier 0, ce qui donne une véritable comparaison.

Pourquoi la deuxième chaîne ne fonctionne pas

La deuxième chaîne, "3581169b064f71be1630b321d3ca318f", ne fonctionne pas car elle contient un caractère non numérique, "b." Par conséquent, lorsqu’il est évalué dans un contexte numérique, il n’est pas considéré comme un format numérique valide. Au lieu de cela, il est évalué comme une chaîne et la comparaison avec l'entier 0 est évaluée comme fausse.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal