繁体   English   中英

PHP:number_format问题

[英]PHP: number_format issue

iv接管了一个仍在使用中的非常老的php项目。 它是一个自定义的“购物”网站。

订购产品时,它将货币值作为整数字符串插入数据库:

2000

然后输出如下:

R20,00

使用此代码

echo number_format($order['order_total'] / 100, 2, ",", "");

我的问题是,如果将订单下达R 15 256.00的值,则将记录插入为:

15256

并以以下形式输出给用户:

R 152,56

但是它最终应该像这样显示

R15,256.00

我确实知道问题是通过在上述查询中将金额除以100来解决的。 如果我更改查询,则较大的数字看起来很好,但较小的数量(例如R20,00)显示为R2000,00

任何帮助都会很棒。

您可以使用PHP的本机函数money_format() ,该函数money_format()数字格式化为货币。 使用setlocale()可以设置适当的语言环境。

setlocale(LC_MONETARY, 'en_IN'); 
echo money_format('%!i', 15256);

这将输出:

15,256.00

尝试这个

echo number_format($order['order_total'] / 100, 2, ".", ",");

您可以在此处阅读有关数字格式的更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM