En PHP, la différence entre 0 et null
Je ne sais pas que lorsque vous stockez des champs avec des données par défaut de 0 dans la base de données MySQL, mais il y a une erreur en jugeant 0 ou Null dans le programme, car 0 et Null ne sont pas complètement égaux. Cela semble être un problème simple, mais il est très difficile de juger. Les valeurs de Null et 0 sont les mêmes, mais les types ne sont pas les mêmes. Pour faire simple, c'est la différence entre == et ===. Le premier == n'a besoin que de la même valeur, mais === nécessite non seulement la même valeur mais aussi le même type de valeur.
Null est un type spécial, deux types sont Null, comme le code suivant :
1 $var = NULL;
$var;
.3.0, "0", NULL et les objets sans aucun attribut seront considérés comme vides.
Regardez l'exemple ci-dessous
Exécuter le résultat<? $str1 = null; $str2 = 0; echo $str1==$str2 ? ‘相等’ : ‘不相等’; $str3 = ""; $str4 = 0; echo $str3==$str4 ? ‘相等’ : ‘不相等’; $str5 = 0; $str6 = '0'; echo $str5===$str6 ? ‘相等’ : ‘不相等’; $str7=0; $str= null ; echo $str7==$str8 ? ‘相等’ : ‘不相等’; ?>
'Equal' 'Equal''Pas égal''Equal'
Donc, 0 et les valeurs Null sont égales, mais leurs types ne le sont pas. Bon, résumons brièvement la différence entre PHP 0 et null. En bref, si vous n'êtes pas clair sur la différence, faites simplement quelques jugements supplémentaires.