PHP - 如何添加小数,.我的号码不加 00?

Posted

技术标签:

【中文标题】PHP - 如何添加小数,.我的号码不加 00?【英文标题】:PHP - How to add decimals , . to my number without adding 00? 【发布时间】:2015-06-04 16:10:40 【问题描述】:

我的数据库中确实有价格并想添加 .并在我的网站上显示它们。

我知道 number_format 但如果我这样使用它 number_format($ctotal, 2, ".", ",");

它会在末尾添加 2 个额外的 00。

例子:

DB: 100000
Now: 100,000.00
Should look like this: 1,000.00

看起来很容易,但找不到解决方案......

谢谢!

【问题讨论】:

十万怎么能等于一千呢?有什么具体原因吗? 简单数学:number_format($ctotal / 100, 2, ".", ","); @anantkumarsingh - 我怀疑它是这样存储的,以避免浮点错误的风险,正是因为它是一个货币价值 @Fred-ii- 可能将美分存储为整数而不是浮点数,以避免与浮点数相关的舍入错误。 @Fred-ii- Ummmmmmmmm 【参考方案1】:

您最好将数字以一种比数学更可取的格式存储在数据库中,而不会出现浮点问题,然后在显示时对数字进行格式化。它将允许您使用源数据进行计算,而无需(再次)重新格式化数字或遇到浮点计算的其他问题。

【讨论】:

以上是关于PHP - 如何添加小数,.我的号码不加 00?的主要内容,如果未能解决你的问题,请参考以下文章

添加逗号时如何更新此 jQuery 插件/正则表达式以忽略小数?

PHP检查数字没有小数比添加两个小数[重复]

如何用身份证号码算出年龄???

PHP格式数字的小数部分

如何在十进制类型的结果中强制添加两位小数?

在Javascript中生成2个值到2个小数位之间的随机数