版权声明:本文为博主原创文章,未经博主允许不得转载 https://blog.csdn.net/sqlquan/article/details/85760881
最近在项目碰到比较小的金额计算问题,然后就碰上了9.95+0.01的这样的数值,发现这个在js和php中直接用+号计算结果都是9.959999999999999,而不是9.96
$a=9.95;
$b= 0.01;
$count=$a+$b; //这里输出是9.959999999999999
//正确应该是9.96才对
查了一下手册发现
php是有高精度计算函数
$a=9.95;
$b= 0.01;
$count= bcadd($a,$b,2); // 输出9.96
当我们需要进行涉及小数位的高精度计算时候建议使用高精度函数去进行计算