【发布时间】:2017-11-17 17:41:30
【问题描述】:
为什么下面两行
$fmt = new NumberFormatter('en_US', NumberFormatter::CURRENCY);
echo $fmt->format(12.34, NumberFormatter::CURRENCY);
输出$12.00 ?
【问题讨论】:
-
我知道
$fmt->formatCurrency()不会删除数字,但我想使用format(),因为它允许通过$fmt->setSymbol()覆盖货币符号。 -
看在上帝的份上,不要将钱存储为浮点数,请使用像 moneyphp/money 这样的适当库,由于浮点数不准确,它不会直接损失钱.
-
@Sammitch 我知道,但是我必须将它们转换为 float 才能使用 NumberFormatter。
标签: php currency numberformatter