php 中的 0 和 null
今天犯了一个错误 java 中是不可能出现的错误
请看:
echo 0==null ; //true echo 0===null ; //false
双等号 0和null比较是true;
三等号 0和null比较是false;
百度查了下 双等号 和 三等号 区别
在PHP中,可以用==(双等号)或者 ===(三等号)来比较字符串。两者的区别是双等号不比较类型,三等号会比较类型,它不转换类型;用双等号进行比较时,如果等号左右两边有数字类型的值,刚会把另一个值转化为数字,然后进行比较。这样的话,如果是纯字符串或者NULL时,会转化为0进行比较。同样,大小于号也和等号一样,比较时可能出现不正确的结果。
ps:
"==" 是比较字符串内容
"==="是比较类型和值
"==" 比较的时候会把值转换成同一种类型进行比较 如 0,null 都转换成了0 进行比较了。所以 0==null;
参考网址 : http://blog.sina.com.cn/s/blog_640b03390106btof.html