首先确保安装了php扩展gettext,然后根据编辑生成po文件default.po。
在php工作目录下进入locale/zh_CN/LC_MESSAGES目录。
格式如下:
msgid "" msgstr "" "Project-Id-Version: gst-time.HEAD\n" "POT-Creation-Date: 2009-04-11 15:45+0000\n" "PO-Revision-Date: 2016-02-16 10:49+0800\n" "Last-Translator: XXXXXX\n" "Language-Team: XXXXXX\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: zh_CN\n" "X-Generator: Poedit 1.8.6\n" "X-Poedit-KeywordsList: XXXXXXXX\n" msgid "test" msgstr "测试" msgid "hello" msgstr "你好"
然后,生成对应的po文件。
(win环境可使用poedit来编辑生成po)
msgfmt -o default.mo default.po
然后php代码调用:
//定义要翻译的目标语言及po文件的编码 $locale = "zh_CN.utf8";setlocale(LC_ALL, $locale); header("Content-type:text/html;charset=utf-8"); //设置翻译文本域,下面的代码就会让程序去locale/zh_CN/LC_MESSAGES/default.mo去寻找翻译文件 bindtextdomain("default", dirname(__FILE__)."/locale"); textdomain("default"); echo _("hello");
浏览网页,显示“你好”,即可。
时间: 2024-08-09 22:01:50