问题起由:PHP中if(true==2)会返回true还是false?@H_301_1@
结果是返回true,顺着这个问题,我把PHP其他数据类型也测试一下。@H_301_1@
结论:@H_301_1@
转化为bool类型时,会变成false的几种数据:@H_301_1@
1.整型0@H_301_1@
2.空字符串@H_301_1@
3.空数组@H_301_1@
4.NULL@H_301_1@
欢迎补充...@H_301_1@
PHP;">
PHP
function p($title,$mybool){
echo "
".$title; echo var_dump($mybool).""; } class foo { function do_foo() { echo "你好!"; } } echo"
PHP中的其他类型转化为Bool类型"; //零 $n0=boolval(0); p("零:",$n0);
//正整数
$n=boolval(2);
p("正整数:",$n);
//负整数
$nx=boolval(-2);
p("负整数:",$nx);
//字符空格
$ss=boolval(" ");
p("字符空格:",$ss);
//空字符串
$sn=boolval("");
p("空字符串:",$sn);
//字符串
$s=boolval("chinacion");
p("字符串:",$s);
//空数组
$an=boolval(array());
p("空数组:",$an);
//数组
$a=boolval(array(0=>1));
p("数组:",$a);
//null类型
$nu = boolval(NULL);
p("NULL:",$nu);
//object
$bar = new foo;
$bar;
$obj = boolval($bar);
p("Object:",$obj);