PHP 变量类型 === 比较不同系统环境的坑~

aowana 发布于 2018-12-27 18:20     分类:站长学院     来源:爱玩电脑     阅读(138)    

最近给美女写真网站开发了在线订单功能,遇到了一个PHP的坑记录一下。PHP全等 "==="在Windows系统与Linux系统结果并不一样。

具体如下:

URL ->  http://www.tuba8.cn/?status=0

$status = intval($_GET['status']);

通过 intval 函数处理后值为  int 0 , 到这里并没有任何错误,接下来就是PHP在 Windows和Linux系统不同的地方了。

代码:

if ( $status==='0' ) { echo 'yes'; }

else { echo 'no'; }

本人的开发环境为Windows系统,一切正常输出  yes 也就是说之间 intval() 处理后依然可以使用 === 匹配为字符型。

等我把代码 up 到服务器上就出现问题了,经过排查发现 Linux系统 PHP有点不一样。

需要将代码修改成为:

if ( $status === 0 ) { echo 'yes'; }

也就是说 Linux系统 PHP 全等运算时会区别整数0和字符串0 。

记录一笔,防坑!


标签Tags:PHP

本站内容未经允许欢迎转载但必须保留原出处链接,部分内容来源互联网版权归原作者所有。

赞 (1) 打赏
上一篇:SAE memcached 服务异常消费,官方竟然无法解决! 下一篇:没有了

推荐阅读

网友评论

头像
推荐

欢迎访问爱玩电脑网

分享最实用的电脑知识和应用技巧,关注IT行业资讯、学装机、玩硬件还有各种搞机新姿势~

 

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏
二维码A
微信扫一扫打赏
二维码B