php === 和==的区别是什么
程序员文章站
2022-03-13 20:07:59
...
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步的操作进行与操作。返回与操作的结果。
附:
推荐学习:《PHP视频教程》
以上就是php === 和==的区别是什么的详细内容,更多请关注其它相关文章!
下一篇: 必须知道的高性能Javascript知识
推荐阅读
-
apache2.4 - apache下运行php报这样的错是什么意思
-
C++ —— 非类中使用const定义常量的初始化,以及#define和typedef的区别
-
PHP中file_exists与is_file,is_dir的区别介绍
-
php的swoole扩展中onclose和onconnect接口不被调用的问题,swooleonclose_PHP教程
-
Codeigniter中集成smarty和adodb的方法_PHP
-
自己写的php中文截取函数mb_strlen和mb_substr
-
php根据日期或时间戳获取干支纪年,生肖和星座信息的方法
-
yii2超好用的日期组件和时间组件_PHP
-
PHP查找一周内的数据 和一段范围的数据 如何写SQL
-
云火墙与云防火墙的区别是什么