【问题标题】:Format number with PHP用 PHP 格式化数字
【发布时间】:2018-05-09 09:50:04
【问题描述】:

我想用 PHP 格式化一个数字,但我没有得到想要的结果。

数字看起来像这样:2.37405,并且应该被塑造成看起来像这样:2.374,05。

我的代码如下所示:

echo number_format($new_price_formatted_no_discount - ($new_price_formatted_no_discount * 5 / 100), 2); ?>

输出在这里:2.37,不幸的是这是错误的..

我做错了什么?

【问题讨论】:

  • 你试过money_format()吗?
  • 原来的号码是多少?
  • @apokryfos 原来的号码是2.37405
  • 我不明白 2.374,05 与此有何关系。我会将 2.374,05 读作 2374 点零五,但原来的数字大约是 2。
  • 展示你如何操纵你的数字,并展示所有这些。 2.37405 对我来说就像一个字符串,因为 dot。现在,我们无法判断这个点是千位分隔符还是小数分隔符,这会改变一切。

标签: php formatting numbers number-formatting


【解决方案1】:

请注意,2.374 介于 2 和 3 之间,而不是介于 2000 和 3000 之间。 number_format($number, $decimals) 将首先为千位添加逗号,例如将 1000 变成 1,000,然后四舍五入到 $decimals 小数。 所以你的数字 2.374 四舍五入为 2.37。 您可能希望将 237405 格式化为 2,374.05

英文数字格式是将逗号放在千位和一个点之间,放在有效数字之前,而德国人则相反。也许你混淆了这些格式?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-15
    • 1970-01-01
    • 2019-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多