首页  >  文章  >  后端开发  >  PHP中,0和null的区别

PHP中,0和null的区别

怪我咯
怪我咯原创
2017-01-16 13:49:512173浏览

PHP中,0和null的区别

不知道大家在MySQL数据库中存储默认数据为0的字段时,但是在程序中判断0或者Null的时候出现了差错,因为0和Null不是完全相等的,看似简单的问题,却在判断的时候很是令人棘

手,Null和0的值是相同的,但是类型却不是一样。简单点就是==和===的差别,第一个==是值相同就好,但是===不仅需要值相同还需要值的类型也要是一样的。

Null是一种特殊的类型,两种类型为Null,比如下面的代码:

1. $var = NULL;

2. $var;

3.0、"0"、NULL以及没有任何属性的对象都将被认为是空的。

看下面的例子

<?
 
$str1 = null;
 
$str2 = 0;
 
echo $str1==$str2 ? ‘相等’ : ‘不相等’;
 
$str3 = "";
 
$str4 = 0;
 
echo $str3==$str4 ? ‘相等’ : ‘不相等’;
 
$str5 = 0;
 
$str6 = &#39;0&#39;;
 
echo $str5===$str6 ? ‘相等’ : ‘不相等’;
 
$str7=0;
 
$str= null ;
 
echo $str7==$str8 ? ‘相等’ : ‘不相等’;
 
?>

运行结果

‘相等’‘相等’‘不相等’‘相等’

所以,0和Null的值是相等的,但是它们的类型是不相等的。好了,稍稍做了下 PHP 0 和null区别 的总结,总之,如果分不清楚的话,多作几个判断就OK了。


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn