IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    PHP常见的保留小数位方法

    Tokin发表于 2016-06-07 10:31:15
    love 0

    最近工作中,要用到保留小数为的方法,我第一个想到的就是round函数,简单无痛,但是最后结果竟然有问题。

    比如:1.08521211032258这样的小数,round处理可能会出一些意料之外的问题。

    总之,对于精度较小的小数,round函数足以胜任,但是对于小数位特别多的小数,round会出现一些小问题,总之就是无法对小数正常的进行处理了。

    在网上搜了很多种方法,使用number_format完成了,下面记录一下我搜集的集中方法,以后用到的时候也方便翻阅。

    sprintf()

    sprintf() 函数把格式化的字符串写写入一个变量中

    echo sprintf("%.3f", 123456.123456); //123456.123
    

    round()

    php集成的函数,如果精度一般,推荐用它

    echo round(123456.123456,3); //123456.123
    

    number_format()

    利用千位分组来格式化数字的函数,如果精度较大,可以尝试使用它

    echo number_format(123456.123456, 3); //123456.123
    

    大体就是这样了,关于number_format()函数的扩展阅读可以参照:
    http://www.w3school.com.cn/php/func_string_number_format.asp



沪ICP备19023445号-2号
友情链接