在开发中经常遇到数值匹配的问题,那么在进行匹配时,遇到下面的情况,你觉得结果是什么?
<?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教程欢迎关注编程学习网扫码二维码 获取免费视频学习资料
- 本文固定链接: http://phpxs.com/post/8412/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取