欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Cakephp的国际化和poEdit的使用

程序员文章站 2024-01-30 20:55:58
...
Cakephp的很强大的i18n功能就是用来实现本地化和国际化的。他通过使用语言配置文件使得程序能够很好的适应变化进行本地化。通过新建locale/chi/LC_MESSAGES/default.po文件,并指定语言选项为“chi”实现。本文中说的就是如何实现这个本地化过程,当然本文中的poedit并不是必须的,但是他可以使得工作效率更高。

一、关于i18n和L10n

这2个东东其实头一次我看到的时候也是一头雾水,但是经过百度的一通搜索,得出的结论就是,不管是几个n,最终的目的就是实现程序本地化就好了,说白了,就是由很多的语言配置文件,反正我是这么理解的。大家也可以去看看,http://baike.baidu.com/view/372835.htm 这里有很详细的说明。

二、在Cakephp里面,实现本地化的方法

目前为止,有2种配置方法。

2.1 方法一

在config/core.php中使用configure::write来制定语言文件。
Configure::write(’Config.language’,"chi");

2.2 方法二

官方说明:http://book.cakephp.org/view/162/Localizing-Your-Application
貌似很复杂的说哦。

App::import('Core', 'l10n'); classTestsController extendsAppController{ $name="Tests"; functiontest_function(){ $this->L10n->newL10n(); $this->L10n->get("chi"); ..... } }2.3 做上边设置改动后需要做的:

当然在上面做修改后,还需要修改对应的ctp文件等哦,

所有的直接输出字符串,没有返回值的地方像这样:

__("english");

间接输出字符串,有返回的地方:

__("english",true);

还有input要加个label来使他出现中文。

__("english");echo $form->input('name',array('label'=>__('name',true)));

2.4 最最重要的一步

就是要编辑这个文件了,locale/chi/LC_MESSAGES/default.po。中间的chi就是语言文件的标志位了。这个文件的格式也很简单,

msgid "Chinese"

msgstr "中国话"

这个的简单重复就行了。

三、使用poedit

使用poedit不是必须的,但是可以使工作变得简单的多。官方网站是:http://www.poedit.net/
他的主要功用就是使得编辑语言配置文件更加方便和快捷。下面是使用poedit的一些简单的截图和说明。

3.1 头一次使用需要选择界面语言 转载请注明来源:Cakephp的国际化和poEdit的使用

以上就是Cakephp的国际化和poEdit的使用的内容,更多相关内容请关注PHP中文网(www.php.cn)!

相关标签: Cakephp,poEdit