为什么下面两行
$fmt = new NumberFormatter('en_US', NumberFormatter::CURRENCY);
echo $fmt->format(12.34, NumberFormatter::CURRENCY);
输出$12.00
?
为什么下面两行
$fmt = new NumberFormatter('en_US', NumberFormatter::CURRENCY);
echo $fmt->format(12.34, NumberFormatter::CURRENCY);
输出$12.00
?
这是因为您使用NumberFormatter::CURRENCY
常量作为format()
.
在文档的预定义常量部分中NumberFormatter
,常量按应使用的方法分组。
NumberFormatter::CURRENCY
2
正如您所做的那样,在构造格式化程序时应该使用 和的值。2
函数中的值format()
对应于NumberFormatter::TYPE_INT64
。
您应该能够在format(12.34)
没有第二个参数的情况下调用。
$fmt = new NumberFormatter('en_US', NumberFormatter::CURRENCY);
echo $fmt->format(12.34);