欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

字符串相等缘故

程序员文章站 2022-06-13 08:46:50
...
字符串相等原因
请教一下,为何PHP认为一下两个字符串是相等的?
if("03E-004611"=="36E-008026") echo '相等';
------解决方案--------------------
本帖最后由 xuzuning 于 2014-02-08 17:10:29 编辑
var_dump("03E-004611"=="36E-008026"); //bool(true)
var_dump(03E-004611, 36E-008026); //float(0) float(0)
var_dump("03E-004611"==="36E-008026"); //bool(false)

由数字组成的串,在比较时会先转换为数值
------解决方案--------------------
因为E是10的幕运算 "03E-004611"转换成符点数时已经无限接近0了,3*pow(10,-4611),达不到这么高的精度,所以就都是0了.
字符串相等缘故

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 字符串相等缘故
  • 专题推荐