基于用户文化php的数字格式


number format based on user culture php

我正在使用php。我正在尝试根据用户文化设置一个数字的格式。理想情况下,我喜欢的是一个函数,我可以将区域性和数字作为参数,它会根据区域性自动格式化数字,但我还没有找到这样的函数。

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

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

$result1和$result2是完全相同的东西!我做错了什么?知道吗?谢谢你的帮助,

Martin

检查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,它应该为您安装语言环境。