Comparaison des types PHP
Comparaison lâche : utilisez deux signes égaux == pour la comparaison, en comparant uniquement les valeurs, pas les types.
Comparaison stricte : utilisez trois signes égaux === pour comparer, en plus de comparer les valeurs, les types sont également comparés.
Par exemple, "42" est une chaîne et 42 est un entier. FALSE est une valeur booléenne et "false" est une chaîne.
<?php if (42 == "42") { echo '1、值相等'; } echo PHP_EOL; // 换行符 if (42 === "42") { echo '2、类型相等'; } else { echo '3、不相等'; } ?>
Le résultat de sortie de l'exemple ci-dessus est :
1, valeurs égales
3, je ne veux pas attendre
Comparez 0, faux, nul en PHP
Code de test :
Exemple :
<?php echo '0 == false: '; var_dump(0 == false); echo '0 === false: '; var_dump(0 === false); echo PHP_EOL; echo '0 == null: '; var_dump(0 == null); echo '0 === null: '; var_dump(0 === null); echo PHP_EOL; echo 'false == null: '; var_dump(false == null); echo 'false === null: '; var_dump(false === null); echo PHP_EOL; echo '"0" == false: '; var_dump("0" == false); echo '"0" === false: '; var_dump("0" === false); echo PHP_EOL; echo '"0" == null: '; var_dump("0" == null); echo '"0" === null: '; var_dump("0" === null); echo PHP_EOL; echo '"" == false: '; var_dump("" == false); echo '"" === false: '; var_dump("" === false); echo PHP_EOL; echo '"" == null: '; var_dump("" == null); echo '"" === null: '; var_dump("" === null);
Le résultat de sortie de l'exemple ci-dessus est :
0 == false: bool(true)
0 === false: bool(false )
0 == null : bool(true)
0 === null : bool(false)
false == null : bool(true)
false === null : bool(false)
"0" == false : bool(true)
"0" === false : bool(false)
"0" == null : bool(false)
"0" === null : bool(false)
" " == false : bool(true)
"" === false : bool(false)
"" == null : bool(true)
"" === null : bool(false)