为什么:PHP中的if(true==2)会返回true还是false?
结果是真的。按照这个问题,我还将测试php的其他数据类型。
结论:
当转换为布尔类型时,几个数据将变为假:
1.整数0。
2.空字符串。
3.空数组。
4.空
欢迎补充。
测试代码:
?phpfunction p($title,$mybool){ echo 'pre '。$ titleecho var_dump($mybool)。/pre ';} class foo { function do _ foo(){ echo ' hello!};}}echo'prePHP中的其他类型被转换为Bool类型/pre ';//Zero $ n0=boolval(0);p('零',$ n0);//正整数$ n=boolval(2);p('正整数',$ n);//负整数$ NX=boolval(-2);p('负整数',$ NX);//字符空间$ ss=boolval(');p('字符空间:',$ ss);//空字符串$ sn=boolval(');p('空字符串',$ sn);//String $ s=boolval(' chinacion ');p('字符串:',$ s);//空数组$ an=boolval(array());p('空数组',$ an);//array $ a=boolval(array(0=1));p('数组:',$ a);//null类型$ nu=boolval(NULL);p('NULL ',$ nu);//对象$ bar=new foo$ bar$ obj=boolval($ bar);p('Object:',$ obj);