문제의 원인: PHP에서 if(true==2)가 true 또는 false를 반환합니까?
결과는 사실입니다. 이 질문에 따라 PHP의 다른 데이터 유형도 테스트하겠습니다.
결론:
부울 유형으로 변환하면 여러 유형의 데이터가 거짓이 됩니다.
1.정수형 0
2. 빈 문자열
3. 빈 배열
4.NULL
추가를 환영합니다...
테스트 코드:
<?php function p($title,$mybool){ echo "<pre class="brush:php;toolbar:false">".$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);