问题起由:PHP中if(true==2)会返回true还是false?
结果是返回true,顺着这个问题,我把php其他数据类型也测试一下。
结论:
转化为bool类型时,会变成false的几种数据:
1.整型0
2.空字符串
3.空数组
4.NULL
欢迎补充...
测试代码:
<?php<br />function p($title,$mybool){<br /> echo "<pre class="brush:php;toolbar:false">".$title;<br /> 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);
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn