代码之家  ›  专栏  ›  技术社区  ›  meder omuraliev

这是一种显示不带小数的货币数字值的好方法吗?

  •  2
  • meder omuraliev  · 技术社区  · 14 年前
    $value = '100.00';
    
    echo $value * 100/100;
    

    或者,如果有“100.70”这样的值,我应该舍入吗?我为一个显示每日费率的表显示这个,总值包含数字,所以我假设用户不必担心十进制值…

    3 回复  |  直到 14 年前
        1
  •  2
  •   cletus    14 年前

    你是否应该围捕取决于你自己。但是为了这个考虑使用 sprintf() .

    $value = '100.00';
    echo sprintf("%.0f', $value);
    

    许多的 比一些算术黑客更好的实现同样的事情。另外,乘以然后除以100就像乘以1。

    取决于你想要达到的目标, number_format() 甚至 money_format() 也可以选择。

    执行实际舍入使用 round() :

    $value = '100.00';
    echo round($value);
    
        2
  •  1
  •   lemon    14 年前
    echo $value * 100/100;
    

    等于 $value * 1 善良的先生

    使用 number format 格式化你的数字而不是做一些花哨的算术

        3
  •  0
  •   wallyk    14 年前

    通常,人们看到钱栏时都希望看到它们的格式相同。对于不同的值,第二个表达式将 100.01 100.1 100 而不是 100.01 100.10 100.00 .

    有几种格式化数字的方法,包括格式化数字、sprintf()和简单的字符串操作。