問題の原因: PHP の if(true==2) は true または false を返しますか?
この質問に続いて、PHP の他のデータ型もテストします。
結論:
bool 型に変換すると、いくつかのタイプのデータが false になります:
1 整数型 0
2. 空の文字列
3. 空の配列
追加へようこそ:
<?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);
ログイン後にコピー