虽然 PHP 是弱类型语言,但也需要明白变量类型及它们的意义,因为我们经常需要对 PHP 变量进行比较,包含松散和严格比较。

    • 松散比较:使用两个等号 == 比较,只比较值,不比较类型。
    • 严格比较:用三个等号 === 比较,除了比较值,也比较类型。

    例如,”42” 是一个字符串而 42 是一个整数。FALSE 是一个布尔值而 “FALSE” 是一个字符串

    1. <?php
    2. if(42 == "42") {
    3. echo '1、值相等';
    4. }
    5. echo PHP_EOL; // 换行符
    6. if(42 === "42") {
    7. echo '2、类型相等';
    8. } else {
    9. echo '3、类型不相等';
    10. }
    11. ?>

    下面这些值都是false,但是=== 类型不是:

    例如: 0==false -> true 0===false -> false