我接管了一个目前仍在使用的非常古老的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
任何帮助都会很棒。
答案 0 :(得分:2)
你可以使用PHP的原生函数money_format()
,它将数字格式化为货币。
使用setlocale()
,您可以设置适当的区域设置。
setlocale(LC_MONETARY, 'en_IN');
echo money_format('%!i', 15256);
这将输出:
15,256.00
答案 1 :(得分:0)