search

Home  >  Q&A  >  body text

extjs4 - PHP 保留两位小数 float格式

现在有个需求,从数据库取出一大坨五位小数的数字,然后保留两位小数。我用了round简单处理了一下,发现诸如19.90000这样的数字,会变成19.9而不是19.90。于是尝试了一下用number format格式化,变成了19.90没问题,但是还需要在前端,展示在extjs的gridpanel里面。grid默认就支持排序,我点了排序,发现数字都是按照首字母排序的,也就是:
18.88
19.12
2.27
2.50
21.00
21.33
相当于是把数字用字符串形式下的首字母进行了排序
我的问题就是:怎么能用PHP处理一下,既保留两位小数,还能转换成数字格式,实话说我不确定PHP能不能支持这样的形式,所以如果能用Extjs的某些配置实现,也非常感谢!

迷茫迷茫2819 days ago655

reply all(3)I'll reply

  • 大家讲道理

    大家讲道理2017-04-10 14:57:52

    string number_format ( float $number [, int $decimals = 0 ] )
    php的number_format返回的是string。
    2个解决方案
    1、直接number返回给前端,前端展示的时候格式化为2位小数
    2、php格式化,但是原数值也返回给前端,用以排序

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 14:57:52

    php 的 round() 函数

    reply
    0
  • 大家讲道理

    大家讲道理2017-04-10 14:57:52

    echo sprintf("%0.2f", "19.90000");

    reply
    0
  • Cancelreply