php中的==和===运算符有什么不同?

      2022年01月21日 星期五 20:20:08     php      php    

==称之为比较运算符,它在比较之前会将两个值尝试转换为相同的数据类型,然后去比较值;通常以第一个值的数据类型为为依据去变换数据类型

===称之为全等比较运算符,该操作符会检查两个值的数据类型,只有数据类型和值都相同时才返回true

这里顺便复习一下strpost,strpos在找不到目标字符串时候将返回false,那么来看看下面两个例子:

“==”比较运算符中使用

<?php
    $str = 'Stack How To';
    $needle = 'Stack';
    if (strpos($str, $needle) == false) {
        echo('Not found!');
    } else {
        echo('Found');
    }
?>
这将会发生错误,这个极端例子中的strpos($str, $needle)将返回0,在这里0==false,将返回true输出Not found

"==="全等比较运算符中使用
<?php
    $str = 'Stack How To';
    $needle = 'Stack';
    if (strpos($str, $needle) === false) {
        echo('Not found!');
    } else {
        echo('Found');
    }
?>
这是正确的方法,0===false将返回false

暂无评论

发表评论