|  |      1Jaylee      2018-11-23 11:37:12 +08:00  4 bcmatch | 
|  |      2onion83      2018-11-23 11:37:37 +08:00 via iPhone  1 计费项目,请使用分,字段类型为 int | 
|      4mayday526      2018-11-23 11:40:03 +08:00 直接这样不行吗.....round((39.89 - 39.88),2) | 
|  |      5lockiee      2018-11-23 11:43:01 +08:00 via iPhone bcmath +1 | 
|  |      6BaoZiDaShen      2018-11-23 12:03:15 +08:00 浮点数运算都会有误差,这是都存在的问题。特别涉及金钱,必须的精确计算,钱多了客户不找你,钱少了分分钟找你拼命。不理解的话,Laruence 大神的这遍博客看一下   http://www.laruence.com/2013/03/26/2884.html | 
|  |      7Joyboo      2018-11-23 12:23:12 +08:00 用分做单位 | 
|  |      8maichael      2018-11-23 12:25:41 +08:00 看需求,不一样的需求对精度要求不一致。 | 
|      9buhi      2018-11-23 12:44:26 +08:00 浮点数算钱, 亏起来一天能亏个几百上千 | 
|  |      10947211232      2018-11-23 12:46:12 +08:00 PHP 的自动类型转换的一个例子是乘法运算符“*”。如果任何一个操作数是 float,则所有的操作数都被当成 float,结果也是 float。否则操作数会被解释为 integer,结果也是 integer。注意这并没有改变这些操作数本身的类型;改变的仅是这些操作数如何被求值以及表达式本身的类型。 | 
|  |      11947211232      2018-11-23 12:46:26 +08:00 | 
|  |      12thinkwei2012      2018-11-23 12:57:45 +08:00 via Android bcmath+1 | 
|  |      13sunmonster      2018-11-23 13:10:07 +08:00 | 
|  |      14gabezhao      2018-11-23 13:36:49 +08:00 bcmath+1 需要的,做 erp 报表之类的需要精确计算,要不然数据不准确 | 
|      15NEETLEE      2018-11-23 14:00:35 +08:00 上个星期我们的支付业务也遇到这个 bug,头痛了一个星期。 最终方案是需要把浮点型转整型的时候先把浮点数转成字符串再转整型,就不会丢失精度了 | 
|  |      16xxbutoo      2018-11-23 14:14:31 +08:00 你可能需要翻翻 php 文档.. 金额相关的还是用分为单位吧。 存 float 遇到坑你就后悔了 | 
|  |      17msg7086      2018-11-23 14:43:37 +08:00 金额用浮点这种近似数值简直是做大死。 | 
|  |      22hlwjia PRO 哎,就这样的水平也去写交易系统? 这个是类似基本常识了(还是大家都不知道? | 
|  |      23jswh      2018-11-23 16:51:03 +08:00 用整数,不是整数的想办法弄成整数 | 
|  |      25realpg PRO int 不是为了精度啥的问题 还有性能问题 | 
|  |      26realpg PRO | 
|  |      27holystrike      2018-11-23 17:28:47 +08:00 | 
|      28q6014080325      2018-11-23 17:39:07 +08:00 BC 任意精度数学 http://php.net/manual/zh/book.bc.php | 
|  |      29jules304      2018-11-23 18:04:52 +08:00 BC 函数+1 | 
|      30MeteorCat      2018-11-23 18:07:47 +08:00 via Android bcmath | 
|  |      32Snail233      2018-12-05 12:37:38 +08:00 bcadd() |