Comparaisons en php de FALSE NULL 0 et ‘0’ et  »

24 juillet 2012 par: Benoit Bonneville

Attention en PHP à la comparaison simple (==) entre les constantes FALSE, NULL, l’entier 0 et la chaine de caractère "0"  et une chaine de caractère vide.

Récapitulatif des comparaisons en php de :
FALSE  NULL, 0 et "0" et ""

 

Soit l’entier 0 (int 0)

0 == "0" => true
0 == false => true
0 == NULL => true
0 == "" => true

 

Soit la valeur FALSE

false == 0 => true
false == "0" => true
false == NULL => true
false == "" => true

 

Soit la valeur "0"

"0" == 0 => true
"0" == false => true
"0" == NULL => FALSE
"0" == "" => FALSE

 

Soit la valeur NULL

NULL == 0 => true
NULL == "0" => FALSE
NULL == false => true
NULL == "" => true

 

Soit la valeur "" (chaine de caractères vide)

"" == 0 => true
"" == "0" => FALSE
"" == false => true
"" == NULL => true

 

Conclusion

Donc en PHP ,
si A vaut B
et B vaut C
alors A ne vaut pas forcement C.

A == B == C != A

Magique !

Filed under: Non classé

Répondre