1

我正在使用 php。我正在尝试根据用户文化格式化数字。理想情况下,我会喜欢一个函数,我可以将文化和数字作为参数提供给它,它会根据文化自动格式化数字,但我还没有找到类似的东西。

所以我尝试使用 setlocale(LC_NUMERIC, myCulture),然后调用 localeconv() 以了解使用 number_format 函数的小数分隔符和千位分隔符等。我把结果放在变量上,它们都是一样的!即我做了:

setlocale(LC_NUMERIC, "en-US");
$result1 = localeconv();
setlocale(LC_NUMERIC, "fr-FR");
$result2 = localeconv();

$result1 和 $result2 是完全相同的东西!我究竟做错了什么?任何想法?谢谢您的帮助,

马丁

4

1 回答 1

1

检查返回值setlocale(LC_NUMERIC, "en-US");

$val = setlocale(LC_NUMERIC, "en-US");
if ($val === FALSE) //locale is not available

如果 $val 对于 linux 发行版返回 FALSE,请运行以下命令

locale-gen fr_FR.utf8它应该为您安装语言环境。

于 2013-07-09T13:04:17.143 回答