虽然 PHP 是弱类型语言,但也需要明白变量类型及它们的意义,因为我们经常需要对 PHP 变量进行比较,包含松散和严格比较。
- 松散比较:使用两个等号 == 比较,只比较值,不比较类型。
- 严格比较:用三个等号 === 比较,除了比较值,也比较类型。
例如,\”98\” 是一个字符串而 98 是一个整数。FALSE 是一个布尔值而 \”FALSE\” 是一个字符串。
<?php if(98 == \"98\") { echo \'1、值相等\'; } echo PHP_EOL; // 换行符 if(98 === \"98\") { echo \'2、类型相等\'; } else { echo \'3、类型不相等\'; } ?>
以上范例输出结果为:
1、值相等 3、类型不相等
PHP中 比较 0、false、null
测试代码:
<?php 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 == 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)
本文来自投稿,不代表韦重蔚立场,如若转载,请注明出处:https://www.weichongwei.com/1283.html