php中0,null,empty,空,false,字符串关系的详细介绍
发布时间:2020-12-13 06:24:40 所属栏目:PHP教程 来源:网络整理
导读:在一个项目中遇到了一个奇怪的问题,耗费了我不少时间都没有解决,最终调试发现是判断的问题—-关于0和 ‘ ‘ (空单引号,为好看清我加了个空格)的判断,我发现 0==” 居然成立,郁闷的同时决定写个简单页面测试,发誓要将0,null,empty,空,false的关系搞的一
在一个项目中遇到了一个奇怪的问题,耗费了我不少时间都没有解决,最终调试发现是判断的问题—-关于0和 ‘ ‘ (空单引号,为好看清我加了个空格)的判断,我发现 0==” 居然成立,郁闷的同时决定写个简单页面测试,发誓要将0,null,empty,空,false的关系搞的一清二楚。因为这很可能在一些关键地方使我们编写的程序,网站存在bug。特别是可能影响到登陆等特殊地方的安全性和逻辑正确性,虽然这是很基础的知识点,但很多人,包括一些高手都可能对0,false的关系很模糊。所以自己动手做一个测试还是很需要的。 php程序代码:<div class="codetitle"><a style="CURSOR: pointer" data="10772" class="copybut" id="copybut10772" onclick="doCopy('code10772')"> 代码如下:<div class="codebody" id="code10772"><?php <FONT style="COLOR: #ff0000">//========= 判断 0 和 '' 以及 empty null false的关系 start =========//if('safdasefasefasf'==0){echo "该字符串转换为数字 等于 0 "; }//output:该字符串转换为数字 等于零。 这是关键的一个例子 手册上有解释:该值由字符串最前面的部分决定。如果字符串以合法的数字数据开始,就用该数字作为其值,否则其值为 0(零)。 $a=0; |