setlocale()如何在Windows上运行?

时间:2014-11-10 14:04:56

标签: php locale

开发多语言应用程序我想输出区域设置正确的数字和日期。在Win7上进行测试我两个都失败了:

setlocale(LC_ALL, 'de_DE@euro', 'de_DE', 'deu', 'de', 'ge', 'German_Germany.1251');
var_dump(localeconv());

显示小数字符是。但对于德国人来说应该是这样。

$f = 3.14;
echo($f);

确认3.14为输出。

无论我尝试设置语言环境,我都没有取得成功。类似的结果适用于number_format()。然而,它适用于日期,例如月名。

Windows / CLI上setlocale()的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

这似乎是自5.3以来PHP的一个已知问题:https://bugs.php.net/bug.php?id=65230

setlocale()应尽可能避免使用NumberFormatter