这个类看起来很痛苦:实际上并非如此,格式化和解析高度可定制,但你可能需要的是非常简单的
如果你想本地化一个数字,请使用
<?php
$a = new \NumberFormatter("it-IT", \NumberFormatter::DECIMAL);
echo $a->format(12345.12345) . "<br>"; $a->setAttribute(\NumberFormatter::MIN_FRACTION_DIGITS, 0);
$a->setAttribute(\NumberFormatter::MAX_FRACTION_DIGITS, 100); echo $a->format(12345.12345) . "<br>"; ?>
如果你想打印货币,请使用
<?php
$a = new \NumberFormatter("it-IT", \NumberFormatter::CURRENCY);
echo $a->format(12345.12345) . "<br>"; ?>
如果你有以(例如)美元存储的货币数据,并且想使用 it-IT 符号打印它们,你需要使用
<?php
$a = new \NumberFormatter("it-IT", \NumberFormatter::CURRENCY);
echo $a->formatCurrency(12345, "USD") . "<br>"; ?>
关于货币的另一个有用示例(如何从语言环境字符串获取货币名称)
<?php
$frontEndFormatter = new \NumberFormatter("it-IT", \NumberFormatter::CURRENCY);
$adminFormatter = new \NumberFormatter("en-US", \NumberFormatter::CURRENCY);
$symbol = $adminFormatter->getSymbol(\NumberFormatter::INTL_CURRENCY_SYMBOL); echo $frontEndFormatter->formatCurrency(12345.12345, $symbol) . "<br>";
?>