PHP中的字符串和int内存地址

时间:2017-04-20 00:22:54

标签: php

我正在学习PHP,我发现,如果使用===来比较变量:

<?php 

    $x = "100";
    $y = 100;
    var_dump($x===$y);  // print bool(false)
?> 

但如果我使用以下内容:

<?php 

    $x = "100";
    $y = '100';
    var_dump($x===$y);  // print bool(true)
?> 

那么,有人可以解释为什么它在上面的例子中返回false和true?

1 个答案:

答案 0 :(得分:0)

===比较变量类型和值。在示例一中,您有一个针对整数的字符串,这些字符串不匹配。示例二你有一个字符串反对字符串,这些匹配。

请参阅:https://3v4l.org/Jgohi4

有关详细信息:http://php.net/manual/en/language.operators.comparison.php

  

如果$ a等于$ b,则为TRUE,它们属于同一类型。