PHP 类型比较
虽然 PHP 是弱类型语言,但也需要明白变量类型及它们的意义,因为我们经常需要对 PHP 变量进行比较,包含松散和严格比较。
例如,"42" 是一个字符串而 42 是一个整数。FALSE 是一个布尔值而 "FALSE" 是一个字符串。
实例
<?phpif(42 == "42") {
echo '1、值相等';}
echo PHP_EOL;
if(42 === "42") {
echo '2、类型相等';} else {
echo '3、类型不相等';}?>
以上实例输出结果为:
1、值相等
3、类型不相等
PHP中 比较 0、false、null
测试代码:
实例
<?phpecho '0 == false: ';var_dump(0 == false);echo '0 === false: ';var_dump(0 === false);echo PHP_EOL;echo '0 == null: ';var_dump(0 == null);echo '0 === null: ';var_dump(0 === null);echo PHP_EOL;echo 'false == null: ';var_dump(false == null);echo 'false === null: ';var_dump(false === null);echo PHP_EOL;echo '"0" == false: ';var_dump("0" == false);echo '"0" === false: ';var_dump("0" === false);echo PHP_EOL;echo '"0" == null: ';var_dump("0" == null);echo '"0" === null: ';var_dump("0" === null);echo PHP_EOL;echo '"" == false: ';var_dump("" == false);echo '"" === false: ';var_dump("" === false);echo PHP_EOL;echo '"" == null: ';var_dump("" == null);echo '"" === null: ';var_dump("" === null);
以上实例输出结果为:
0 == false: bool(true)
0 === false: bool(false)
0 == null: bool(true)
0 === null: bool(false)
false == null: bool(true)
false === null: bool(false)
"0" == false: bool(true)
"0" === false: bool(false)
"0" == null: bool(false)
"0" === null: bool(false)
"" == false: bool(true)
"" === false: bool(false)
"" == null: bool(true)
"" === null: bool(false)

