计算金额时要先扩大100倍,然后计算完再缩小100倍吗?

达不溜H 发布于 2015/11/04 22:41
阅读 309
收藏 0
如题,谢谢!
加载中
1
景愿
景愿
请用BigDecimal来做金融计算!
1
zigzagroad
zigzagroad
好像是推荐存整数,即 金额单位是“分”,这样没有小数。
ericsoul
ericsoul
这个是正解,用浮点的都是作,在最后显示的时候,做除100处理即可。后台表,内存计算都用分做单位,算出小数,直接丢弃,注意有些是四舍五入,有些是舍弃,配合业务场景思考。
0
eechen
eechen
如果确实需要更高的精度,PHP可以使用bcmath(Binary Calculator Math)函数或者gmp(GNU Multiple Precision)函数.
http://php.net/manual/zh/ref.bc.php
http://php.net/manual/zh/ref.gmp.php
加 bcadd
减 bcsub
乘 bcmul
除 bcdiv
乘方 bcpow
开平方根 bcsqrt
比较 bccomp
取模(求余数) bcmod
设置默认精度 bcscale
返回顶部
顶部