PHP gettext returns 在 Homestead 中输入结果
PHP gettext returns input as result in Homestead
在我们公司的一个项目中,我们使用gettext来翻译文本。这已经工作了好几年,但现在我正在尝试 运行 Homestead 中的项目,除了 gettext 之外一切正常。当使用例如 gettext('input_string')
它 returns input_string
。在我们的服务器和 MAMP 中,一切正常。可能是什么问题呢?我在 Apache 和 PHP 7.0(与服务器和 MAMP 相同)上 运行ning 项目
语言环境的域绑定如下:
bindtextdomain('projectname', APPLICATION_PATH. DIRECTORY_SEPARATOR . 'locale');
textdomain('projectname');
bind_textdomain_codeset('projectname', 'UTF-8');
绑定文本域中的路径正确。文件结构为:
- locale
- en_US
- LC_MESSAGES
- projectname.mo
- projectname.po
- fr_FR
- LC_MESSAGES
- projectname.mo
- projectname.po
- nl_NL
- LC_MESSAGES
- projectname.mo
- projectname.po
- pt_PT
- LC_MESSAGES
- projectname.mo
- projectname.po
Homestead 上未安装语言环境。使用 sudo locale-gen nl_NL
修复了它
在我们公司的一个项目中,我们使用gettext来翻译文本。这已经工作了好几年,但现在我正在尝试 运行 Homestead 中的项目,除了 gettext 之外一切正常。当使用例如 gettext('input_string')
它 returns input_string
。在我们的服务器和 MAMP 中,一切正常。可能是什么问题呢?我在 Apache 和 PHP 7.0(与服务器和 MAMP 相同)上 运行ning 项目
语言环境的域绑定如下:
bindtextdomain('projectname', APPLICATION_PATH. DIRECTORY_SEPARATOR . 'locale');
textdomain('projectname');
bind_textdomain_codeset('projectname', 'UTF-8');
绑定文本域中的路径正确。文件结构为:
- locale
- en_US
- LC_MESSAGES
- projectname.mo
- projectname.po
- fr_FR
- LC_MESSAGES
- projectname.mo
- projectname.po
- nl_NL
- LC_MESSAGES
- projectname.mo
- projectname.po
- pt_PT
- LC_MESSAGES
- projectname.mo
- projectname.po
Homestead 上未安装语言环境。使用 sudo locale-gen nl_NL