电商网站的价格计算可以使用PHP直接运算吗?
因为PHP对浮点运算都不是非常精准的, 商品价格保留三位小数
比如 200.050 这样的话,订单结算有问题吗??会不会
导致订单价格和商品SKU价格略有浮动?
像京东这样的电商网站,商品订单价格如何运算?用什么价格计算工具?
电商网站的价格计算可以使用PHP直接运算吗?
因为PHP对浮点运算都不是非常精准的, 商品价格保留三位小数
比如 200.050 这样的话,订单结算有问题吗??会不会
导致订单价格和商品SKU价格略有浮动?
像京东这样的电商网站,商品订单价格如何运算?用什么价格计算工具?
谢邀.
正如1楼所说的,你这个不精确确实派不上.我的建议是这样的,如果对金钱这块精确度一定要高的话,可以参考用int类型来存储.存成人民币:分.当然,这个看实际的需求.但是如果说对精度要求一定要高的话,而且为了方便,你可以用PHP的一个扩展bcmath来解决.特大不考虑.比如说上几亿这种.实际上,很多情况下,商品只会用到分这个单位,可能在打折的时候,需要计算下精度问题.通常来说,在开发小型电商网站,数据库存成decimal就可以了
见过有金融公司用 decimal
类型 存储金额。
在 PHP
中处理时,会用到如下函数 或 库:
金额是浮点数,避免直接对金额进行 mysql-sum
或 PHP 中正常的 +
-
等操作。
像金额这样的敏感数据,肯定不能直接使用浮点变量简单粗暴地运算,可以使用一些数学扩展库,如
php-bcmath
等