PHP之浮点数计算比较以及取整数不准确的解决办法


Posted in PHP onJuly 29, 2015

php有意思的现象,应该是很多编程语言都会有这样的现象。这个是因为计算机的本身对浮点数识别的问题.....下面通过代码给大家展示下:

$f = 0.58; 
var_dump(intval($f * 100 *100)); //结果5799 
var_dump((float)($f * 100 *100)); //结果5800 
echo (int)((0.1+0.7)*10); //结果7 
echo (float)((0.1+0.7)*10); //结果8 

<?php 
$a = 0.1; 
$b = 0.7; 
var_dump(($a + $b) == 0.8); 
//打印出来的值居然为 boolean false 
<?php 
$a = 0.1; 
$b = 0.7; 
var_dump(bcadd($a,$b,2) == 0.8);// bool true

再次需注意的是在浮点数计算的时候,切记不要把浮点数转换成整形,否则会出现不可能预估的错误。

以上代码就是PHP之浮点数计算比较以及取整数不准确的解决办法。

PHP 相关文章推荐
一个更简单的无限级分类菜单代码
Jan 16 PHP
php与paypal整合方法
Nov 28 PHP
PHP上传图片进行等比缩放可增加水印功能
Jan 13 PHP
php事务处理实例详解
Jul 11 PHP
php一维二维数组键排序方法实例总结
Nov 13 PHP
php绘制一个矩形的方法
Jan 24 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
Jul 29 PHP
PHP 实现的将图片转换为TXT
Oct 21 PHP
PHP二维数组去重实例分析
Nov 18 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
Apr 02 PHP
Laravel框架路由管理简单示例
May 07 PHP
基于laravel Request的所有方法详解
Sep 29 PHP
PHP实现简单搜歌的方法
Jul 28 #PHP
PHP读取配置文件类实例(可读取ini,yaml,xml等)
Jul 28 #PHP
PHP实现简单的新闻发布系统实例
Jul 28 #PHP
PHP实现的memcache环形队列类实例
Jul 28 #PHP
如何实现php图片等比例缩放
Jul 28 #PHP
PHP封装CURL扩展类实例
Jul 28 #PHP
php图像处理类实例
Jul 28 #PHP
You might like
smarty 缓存控制前的页面静态化原理
2013/03/15 PHP
关于svn冲突的解决方法
2013/06/21 PHP
php实现的ping端口函数实例
2014/11/12 PHP
PHP弱类型的安全问题详细总结
2016/09/25 PHP
用PHP的socket实现客户端到服务端的通信实例详解
2017/02/04 PHP
对JavaScript的eval()中使用函数的进一步讨论
2008/07/26 Javascript
JavaScript初学者需要了解10个小技巧
2010/08/25 Javascript
Javascript insertAfter() 实现函数代码
2011/10/12 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
js中使用replace方法完成某个字符的转换
2014/08/20 Javascript
js鼠标悬浮出现遮罩层的方法
2015/01/28 Javascript
JSONP之我见
2015/03/24 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
2015/09/22 Javascript
JavaScript 通过Ajax 动态加载CheckBox复选框
2017/08/31 Javascript
nodejs结合socket.io实现websocket通信功能的方法
2018/01/12 NodeJs
MUI 实现侧滑菜单及其主体部分上下滑动的方法
2018/01/25 Javascript
Vue实现textarea固定输入行数与添加下划线样式的思路详解
2018/06/28 Javascript
简单了解JavaScript中常见的反模式
2019/06/21 Javascript
微信小程序实现下拉框功能
2019/07/16 Javascript
ES6的异步操作之promise用法和async函数的具体使用
2019/12/06 Javascript
python中pycurl库的用法实例
2014/09/30 Python
Numpy之文件存取的示例代码
2018/08/03 Python
解决Python3 控制台输出InsecureRequestWarning问题
2019/07/15 Python
Django 路由控制的实现
2019/07/17 Python
python从内存地址上加载python对象过程详解
2020/01/08 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
python模拟点击网页按钮实现方法
2020/02/25 Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
2020/09/01 Python
经典c++面试题二
2015/08/14 面试题
法制报告会主持词
2014/04/02 职场文书
白血病捐款倡议书
2014/05/14 职场文书
篮球比赛策划方案
2014/06/05 职场文书
军训结束新闻稿
2015/07/17 职场文书
2015年初中教务处工作总结
2015/07/21 职场文书
redis 查看所有的key方式
2021/05/07 Redis
mysql数据库隔离级别详解
2022/06/16 MySQL