如何通过配置文件为LC_MESSAGES设置语言环境?

时间:2018-12-29 00:44:23

标签: php nginx fpm php-gettext

在为PHP设置gettext时,需要声明(其中包括)以下两项(在我的示例中,我正在使用en_US):

setlocale(LC_MESSAGES, 'en_US.utf8');
putenv('LANG=en_US.utf8');

我正尝试将这些内容移到PHP配置文件中,因此我已经为LANG设置了环境变量,如下所示:

env[LANG] = 'en_US.utf8'

这似乎还可以,并且不再需要使用第二个命令。

但是LC_MESSAGES似乎没有其他选择。尽管setlocale()的文档中说:

在我的情况下,将其设置为环境变量是行不通的。
  

如果语言环境为NULL或空字符串“”,则将设置语言环境名称   从与变量名称相同的环境变量的值中   以上类别,或来自“ LANG”。

因为在我的情况下,LC_MESSAGES不是空的,而是返回了C,我不知道它的含义和值的来源。

我在php.ini文件中找到的最接近的东西是一个名为intl.default_locale的文件,我将其设置为intl.default_locale=en_US.utf8,但没有任何变化。

所以我只是想知道是否可以通过配置文件来完成?

0 个答案:

没有答案