关于PHP运算精确度的问题

时间:2022-04-10 19:14:24

遇到一个很坑的问题


数值做float类型转换之后,经过运算之后得到了    

'amount' => 110.00000000000001,
 
与数据库的数据进行比较导致不匹配,
 
 
 
这个属于PHP底层的运算问题,注意float运算的精确度,对于精确度要求很高,运算处理要谨慎处理

解决方案,不使用强制转换,使用精度的运算函数
高精度的处理包括+,-,*,/等都不使用符合运算
应该使用bcadd()等函数,可以让数的精度更加准确