如何解决PHP浮点型数据运算不准的问题

 PHP   高蒙   阅读(1646)   评论(0)   2016-11-18 11:30:55     


php浮点型数据运算相加相减的时候会出现不准确的情况,都说解释型语言对于浮点运算都会有问题的说法是真的。那么怎么解决php浮点型运算不准确的问题呢,其实可以使用内置的函数解决。

<?php
$a = 100.00;
$b = 99.90;
echo $a-$b;
0.0999999999999940.10

echo bcsub($a,$b,2);
0.10

拓展:

对于任意精度的数学,PHP提供了支持用字符串表示的任意大小和精度的数字的二进制计算。 

自 PHP 4.0.4,libbcmath 随同 PHP 一起发布。该扩展不需要任何外部的库。

本类函数仅在 PHP 编译时配置了 --enable-bcmath 时可用。 

PHP 的 Windows 版本已内建对此扩展的支持。不需要载入额外的扩展来使用这些函数。


bcadd:将二个高精确度数字相加。

bccomp:比较二个高精确度数字。

bcdiv:将二个高精确度数字相除。

bcmod:取得高精确度数字的余数。

bcmul:将二个高精确度数字相乘。

bcpow:求一高精确度数字次方值。

bcscale:配置程序中所有 BC 函数库的默认小数点位数。

bcsqrt:求一高精确度数字的平方根。

bcsub:将二个高精确度数字相减。


上面提供的函数就可以解决php浮点型运算不准确的问题。





相关文章



我要评论


站长昵称:(*)

输入内容:


评论列表


高蒙

男,程序猿一枚

 

人生要是没有理想, 那跟一条咸鱼有什么分别。


关于我

  http://www.shuchengxian.com

高蒙个人博客是以PHP技术为主的程序员个人博客。博客主要发布php开发中遇到的问题以及解决办法,同时个人博客也分享网站模板素材,jquery插件等方面素材。


站点声明:相关侵权、举报、投诉及建议等,请发E-mail:936594075#qq.com(#替换成@)。

Copyright © 2018, www.shuchengxian.com, All rights reserved. 个人博客皖公网安备 34152302000022号 皖ICP备15015490号

关键词:个人博客,PHP博客,PHP博客程序,高蒙博客,高蒙个人博客,php程序员博客,程序员个人博客