我使用setlocale()函数设置了语言环境,让我们说“en_US”。
现在我正在尝试使用这样的千位分隔符格式化货币:
$ currency = number_format($ value,2, '。','');
有效,但有时我有其他货币,我希望number_format根据使用区域设置使用正确的小数分隔符。
有没有办法根据已设置的区域设置以某种方式获取当前的小数分隔符?
答案 0 :(得分:12)
答案 1 :(得分:1)
这不是最好的,但它有效:
$locale_info = localeconv();
echo 'decimal_point=', $locale_info['decimal_point'], '<br/>/n';
localeconv()返回一个关联数组,其中包含小数点字符以外的其他字段。
答案 2 :(得分:0)
Sean Bright是对的,使用localeconv()
功能。您确定为操作系统设置了正确的区域设置,因为基于Unix的操作系统使用“en_US.UTF-8”表示法,而Windows使用“en-US”。