生成.mo文件
- 在根目录创建文件夹:language/zh_CN/LC_MESSAGES
- 在该文件夹下创建test.po文件:
msgid "Welcome to My PHP Application"
msgstr "欢迎访问我的PHP应用"
- 在Linux命令行中进入该目录,并执行msgfmt -o test.mo test.po
若环境没有msgfmt工具,请顺手安装:
sudo apt-get install gettext
或
yum install gettext-devel
初始化
- 在application/Bootstrap.php中增加新方法
public function _initLang()
{
putenv('LC_ALL=zh_CN');
setlocale(LC_ALL, 'zh_CN');
$domain = 'test';
$r = bindtextdomain($domain, "../language");
bind_textdomain_codeset($domain, 'UTF-8' );
textdomain($domain);
echo _("Welcome to My PHP Application");
}
坑
- 不要使用common作为textdomain,否则会无法匹配到对应的.mo文件