=$b){ echo 1; } 我知道浮点数有精度问题,需要通过bccomp比较。 但是,上述例子,可以这样直接比较吗?如果不能,请举出..."/> =$b){ echo 1; } 我知道浮点数有精度问题,需要通过bccomp比较。 但是,上述例子,可以这样直接比较吗?如果不能,请举出...">
首页 > 后端开发 > php教程 > php:直接赋值的浮点数可以不通过bccomp,直接比较吗?

php:直接赋值的浮点数可以不通过bccomp,直接比较吗?

WBOY
发布: 2016-06-06 20:39:35
原创
1121 人浏览过

$a="1.2424"; //直接赋值

$b=1.2424; //从mysql数据库float字段读取

if(floatval($a)>=$b){
echo 1;
}

我知道浮点数有精度问题,需要通过bccomp比较。

但是,上述例子,可以这样直接比较吗?如果不能,请举出失败的例子

a,b变量都是直接赋值,赋值前后不做任何运算,按算法直接比较。

回复内容:

$a="1.2424"; //直接赋值

$b=1.2424; //从mysql数据库float字段读取

if(floatval($a)>=$b){
echo 1;
}

我知道浮点数有精度问题,需要通过bccomp比较。

但是,上述例子,可以这样直接比较吗?如果不能,请举出失败的例子

a,b变量都是直接赋值,赋值前后不做任何运算,按算法直接比较。

不能。

<code>php -r "var_dump( 1242.4/1000, floatval('1.2424') >= 1242.4/1000 );"
float(1.2424)
bool(false)
</code>
登录后复制
相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板