在财务结算时,10w+ 的单子出现了 2 毛 8 的误差,老哥们有没有办法缩小误差? 
                            
                                                    
                        
                    
                    
  
                    
                    场景:目前有一个10w+的订单,然后公司平台抽取管理费。费率是6.0445%。最后财务结算时出现2毛8的误差
前提: 金额单位都是‘分‘, 管理费率存储的单位是百万分之一
管理费计算公式:
/**
 * 管理费算法
 * @param integer $managerRate 费率
 * @param integer $payMoney 输入金额
 * @return integer
 */
function managerFree($managerRate, $payMoney)
{
    //return bcdiv(bcmul($payMoney, $managerRate), floatval(1000000.0));
    return round(($payMoney * $managerRate) / 1000000);
}上面两张方法都试过了。有没有这方面有经验的老哥哥。
 
           
         
                     
                     
             
             
           
           关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: