Gettext,不显示

时间:2009-10-28 16:09:11

标签: php apache2 internationalization gettext

我正在尝试使用以下代码加载我的.mo翻译,但它不起作用。我有php gettext ext。在我的phpinfo()中启用并安装了所有必需的语言环境。 我错过了什么吗?

$locale = "en_US";

putenv("LC_ALL=$locale");

setlocale(LC_ALL, $locale);

bindtextdomain("messages", "./locale");
textdomain("messages");

我的.mo文件位于./locale/en_US/messages.mo

2 个答案:

答案 0 :(得分:2)

当apache线程加载.mo文件时,它将不会重新加载它,直到apache线程被回收。因此,如果你更新.mo文件,并且想要确保你的php正在使用那个新的.mo文件,你实际上需要重新启动apache或为mo文件使用不同的名称。

无论如何,我会设置LANG环境变量。

答案 1 :(得分:0)

您可能需要更改路径,使其成为绝对路径,而不是相对路径。