截取金额的小数后两位(其余部分舍去)

文章目录

场景

  • 我们公司的客户是电商,我们在处理金额的时候,需要将金额截取到小数点后两位,其余部分舍去。
  • 四舍五入会导致客户发现自己账户的金额少了, 所以不能使用四舍五入的算法

解决

  • floor实现截取, sprintf实现格式化
/**
 * @purpose                保留2位小数但不四舍五入
 * @description
 * @last_edit_time         2019-12-17
 * @last_edit_author       
 * @author                 
 * @param float $number
 * @return float
 */
if (!function_exists('decimal_format')) {
    function decimal_format(float $number): float
    {
        return sprintf('%.2f', floor($number * 100)/100);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章