简介:解决PHP精度丢失问题
在上一篇文章中我们介绍了js解决精度丢失的问题,今天我们再来聊聊服务器端PHP是如何解决精度丢失的问题的!
PHP官方提供了一个高精度计算的扩展【bcmath】,这个扩展主要提供如下几个函数:
1、两数相加(bcadd)
bcadd('任意精度的数字1','任意精度的数字2','结果中小数点后的小数位数,选填哦')
2、两数相减(bcsub)
bcsub('任意精度的数字1','任意精度的数字2','结果中小数点后的小数位数,选填哦')
3、两数相除(bcdiv)
bcdiv('被除数','除数','结果中小数点后的小数位数,选填哦')
4、两数相乘(bcmul)
bcmul('任意精度的数字1','任意精度的数字2','结果中小数点后的小数位数,选填哦')
5、任意精度数字取模
bcmod('被除数', '除数', '结果中保留小数点后几位')
6、任意精度数字的乘方
bcpow('底数', '指数', '结果中小数点后的小数位数')
7、任意精度数字的二次方根
bcsqrt('格式良好的 BCMath 数字字符串', '结果中小数点后的小数位数')
在官方文档中,上述所有函数的参数一和参数二为字符类型,但是我们转数字类型也是可以的。
有遗漏或者不对的可以在我的公众号留言哦