• 技术文章 >后端开发 >PHP问题

    php === 和==的区别是什么

    藏色散人藏色散人2021-11-17 10:10:46原创1174

    php ===和==的区别:1、在PHP中===表示全等运算符,而==表示等于运算符;2、如果等于运算符两边的值相等,则返回true,而如果全等运算符两边的值相等但类型不等,则返回false。

    本文操作环境:windows7系统、PHP7.1版、DELL G3电脑

    php === 和==的区别是什么?

    php中的==和===的用法及区别

    在开发中进场遇到数值匹配的问题,那么在进行匹配时,遇到下面的情况,你觉得结果是什么?

    <?php 
    $str = "0dff";
    if (0 == $str) {
    echo "true";
    }else{
    echo "false";
    }
     
    ?>

    出人意料的上面的这个程序的输出结果是true,也就是说在编译中程序默认0和0dff是相等的。这是因为在执行关系运算”==“时要求运算符两边的数据类型必须一致,所以等号右边的字符串被强制 转换为了整型0。

    这也是一系列弱类型语言的一个缺点。在php中提供了“===”来解决这个问题。

    <?php 
    $str = "0dff";
    if (0 === $str) {
    echo "true";
    }else{
    echo "false";
    }
     
    ?>

    这个程序的输出是false。

    全等于操作过程如下:

    1.判断全等于操作符2边的数据类型是否相同 如果不相同,则返回false

    2.判断全等于操作符2边的值是否相等,如果 不相等,则返回false

    3.最后将上面2步的操作进行与操作。返回与操作的结果。

    附:

    334bb8bea5e4a2b91e0e4b683a94749.png

    推荐学习:《PHP视频教程

    以上就是php === 和==的区别是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php
    上一篇:ubuntu怎么安装php7.2 下一篇:php是不是彻底被淘汰啦?
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• php运算符运用之如何使用基本赋值运算符• PHP中的===运算符为什么比==快?• php中三元运算符怎么用• PHP基础运算符的奶妈级整理分享
    1/1

    PHP中文网