使用php
+
-
*
/
计算浮点数的时候,可能会遇到一些计算结果错误的问题,如下:
<?php
echo intval(0.58 * 100); //输出57
?>
解决办法
<?php
echo bcmul(0.58, 100); //输出58
?>
php提供了BC高精确度函数库处理此问题
bcadd — 将两个高精度数字相加
bcsub — 将两个高精度数字相减
bcmul — 将两个高精度数字相乘
bcdiv — 将两个高精度数字相除
bccomp — 比较两个高精度数字,返回-1, 0, 1
bcmod — 求高精度数字余数
bcpow — 求高精度数字乘方
bcpowmod — 求高精度数字乘方求模,数论里非常常用
bcscale — 配置默认小数点位数,相当于就是Linux bc中的”scale=”
bcsqrt — 求高精度数字平方根
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。