深入PHP中慎用双等于(==)的详解


Posted in PHP onJune 06, 2013

PHP比较运算符出现的频率实在是太高了,尤其是 ==
if(a == b){
// do something
}
但是,你真的掌握了 == 了吗?细节很重要!
来看下面的代码,说出你认为正确的答案
var_dump('  123fg456'==123);
var_dump('some string' == 0);
var_dump(123.0 == '123d456');
var_dump(0 == "a");
var_dump("1" == "01");
var_dump("1" == "1e0");
先想出你的答案,然后再运行一次看看。如果答案没有差错,那么恭喜你,基础知识很扎实。

解释:
如果比较一个整数和字符串,则字符串会被转换为整数。如果比较两个数字字符串,则作为整数比较。此规则也适用于 switch 语句。
特别注意,字符串转换为整数时,是从左到右,直到遇到非数字字符为止。也就是说 '123abc456' 会被转换成 123,而不是 123456。另外字符串开始的空格会被忽略,比如 '   234abc' 转换为 234。
下面附上松散比较和严格比较的对照表
深入PHP中慎用双等于(==)的详解

PHP 相关文章推荐
PHP4实际应用经验篇(4)
Oct 09 PHP
php编写一个简单的路由类
Apr 13 PHP
php判断是否为json格式的方法
Mar 04 PHP
PHP缓存集成库phpFastCache用法
Dec 15 PHP
PHP curl使用实例
Jul 02 PHP
PHP调试的强悍利器之PHPDBG
Feb 22 PHP
php如何执行非缓冲查询API
Jul 22 PHP
PHP导出带样式的Excel示例代码
Aug 28 PHP
PHP实现的解汉诺塔问题算法示例
Aug 06 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
laravel框架中间件简单使用方法示例
Jan 25 PHP
HTTP头隐藏PHP版本号实现过程解析
Dec 09 PHP
解析PHP中如何将数组变量写入文件
Jun 06 #PHP
浅谈PHP强制类型转换,慎用!
Jun 06 #PHP
探讨file_get_contents与curl效率及稳定性的分析
Jun 06 #PHP
$_GET['goods_id']+0 的使用详解
Jun 06 #PHP
PHP编码规范的深入探讨
Jun 06 #PHP
PHP输出XML到页面的3种方法详解
Jun 06 #PHP
PHP转换文件夹下所有文件编码的实现代码
Jun 06 #PHP
You might like
非常精妙的PHP递归调用与静态变量使用
2012/12/16 PHP
使用php判断网页是否gzip压缩
2013/06/25 PHP
PHP goto语句简介和使用实例
2014/03/11 PHP
PHP图片处理之图片旋转和图片翻转实例
2014/11/19 PHP
thinkPHP事务操作简单案例分析
2019/10/17 PHP
PHP读取文件或采集时解决中文乱码
2021/03/09 PHP
PJBlog插件 防刷新的在线播放器
2006/10/25 Javascript
使用jquery给input和textarea设定ie中的focus
2008/05/29 Javascript
通过隐藏option实现select的联动效果
2009/11/10 Javascript
使用js获取QueryString的方法小结
2010/02/28 Javascript
提升PHP安全:8个必须修改的PHP默认配置
2014/11/17 Javascript
一道优雅面试题分析js中fn()和return fn()的区别
2016/07/05 Javascript
微信小程序加载更多 点击查看更多
2016/11/29 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
bootstrap Table的一些小操作
2017/11/01 Javascript
javaScript动态添加Li元素的实例
2018/02/24 Javascript
记一次webapck4 配置文件无效的解决历程
2018/09/19 Javascript
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
2018/11/05 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
微信小程序wxml列表渲染原理解析
2019/11/27 Javascript
python里大整数相乘相关技巧指南
2014/09/12 Python
Python实现的数据结构与算法之快速排序详解
2015/04/22 Python
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
2017/07/11 Python
理论讲解python多进程并发编程
2018/02/09 Python
python使用配置文件过程详解
2019/12/28 Python
python的列表List求均值和中位数实例
2020/03/03 Python
基于python 取余问题(%)详解
2020/06/03 Python
python3 使用ssh隧道连接mysql的操作
2020/12/05 Python
使用html5 canvas绘制圆环动效
2019/06/03 HTML / CSS
美国Curacao百货连锁店网站:iCuracao.com
2019/07/20 全球购物
销售副总经理岗位职责
2013/12/11 职场文书
公司年会晚宴演讲稿
2014/01/06 职场文书
Python包管理工具pip的15 个使用小技巧
2021/05/17 Python
Mysql 用户权限管理实现
2021/05/25 MySQL
CSS 伪元素::marker详解
2021/06/26 HTML / CSS
python pandas 解析(读取、写入)CSV 文件的操作方法
2022/12/24 Python