我碰巧知道“SEK”(瑞典货币)货币应该如何用“sv”(瑞典)语言在“SE”(瑞典)语言环境中格式化。它应该使用数千个分隔符的句点。但是,下面的最小代码示例将显示 PHP 以空格而不是千位分隔符的句点输出它。它确实得到了正确的逗号(用于十进制字符)以及最后的“kr”,所以我不知道该怎么做:
// 代码示例 #1(正常工作):
$a = new \NumberFormatter('en_US', \NumberFormatter::CURRENCY);
var_dump($a->formatCurrency(123456789.987, 'USD'));
Expected output:
$123,456,789.99
Actual output:
$123,456,789.99
// 代码示例 #2(似乎无法正常工作):
$a = new \NumberFormatter('sv_SE', \NumberFormatter::CURRENCY);
var_dump($a->formatCurrency(123456789.987, 'SEK'));
Expected output:
123.456.789,99 kr
Actual output:
123 456 789,99 kr
这可能有什么原因?令人沮丧的是,它“几乎”做对了。