在php中存在getlocale()方法?

时间:2015-01-16 12:22:04

标签: php localization internationalization

我在PHP中找不到getlocale()函数... 有没有办法获得当前的语言环境?

<?php
$locale="en_US";
setlocale(LC_ALL, $locale);
...
...
...
$locale=getlocale(LC_MESSAGES); //I need to get the setted locale!
?>

我无法将其存储在全局变量中,因为我需要为LC_MESSAGES设置CURRENT语言环境,自定义脚本可能会在代码执行期间更改它。

介意,我需要“en_US”作为getlocale()回答......

1 个答案:

答案 0 :(得分:2)

使用

$locale=setlocale(LC_ALL, 0);

你会得到一个像

这样的字符串
"LC_CTYPE=en_US.UTF-8;LC_NUMERIC=C;LC_TIME=C;LC_COLLATE=C;LC_MONETARY=C;LC_MESSAGES=C;LC_PAPER=C;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=C;LC_IDENTIFICATION=C"

C表示&#34;使用硬编码的任何语言环境&#34;对于系统(并且因为大多数* NIX程序是用C语言编写的,它被称为C),并且等同于LC_CTYPE的初始字符串条目