php如何获取给定语言环境的当前十进制/千位分隔符

Jor*_*rre 7 php locale localization

我使用setlocale()函数设置了语言环境,让我们说"en_US".

现在我正在尝试格式化货币而没有像这样的千位分隔符:

$ currency = number_format($ value,2,'.','');

这有效,但有时我有其他货币,我希望number_format根据使用区域设置使用正确的小数分隔符.

有没有办法根据已设置的区域设置以某种方式获取当前的小数分隔符?

Sea*_*ght 12

localeconv()应该这样做.从手册:

返回包含本地化数字和货币格式信息的关联数组.

以下是setlocale() Windows上识别的语言字符串列表.


小智 5

它不是最好的,但它有效:

$locale_info = localeconv();
echo 'decimal_point=' . $locale_info['decimal_point'] . "<br/>\n";
Run Code Online (Sandbox Code Playgroud)

localeconv()返回一个与小数点字符之外的其他字段的关联数组。