请教:如何设置中文语言?

请教各位:

我正在使用YII开发一个网站,需要设置为中文语言。


使用YII的FORM做输入验证的时候,提示的是英文消息。


我想这可能是语言没有设置正确,尝试在CApplicatio类里面,设置语言_languages="zh_CN";但是,还是不起做用。





请大家帮忙,给我一些提示。


谢谢了!

return array(

	'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',

	...

	'language'=>'zh_cn',

http://www.shotki.com/hezll/2009/12/yii如何实现双语化/

yii实现双语化的一篇文章

‘sourceLanguage’=>‘zh_cn’,

谢谢独飞和 小新hezll!

YII框架的消息基本都能显示为中文了。





但是还有显示form里面的字段前面的标签,还是英文的,这个要怎么处理呢?!


我看yiic命令行好像支持把php文件中的字符串扫描出来,自动生成替换文件,但是我没弄明白yiic message怎么使用。





谢谢大家的帮助了!

明白了,在 public function attributeLabels() 实现各个属性对应的标签即可,但是 中文 在浏览器下显示的是乱码!?这个问题怎么解决?!

哈哈,搞定了!

终于明白了Yii多语言翻译机制.

在model的 attributeLabels() 方法里:

调用 Yii::t(‘your-message-name’,‘message’);




   	/**

	 * Declares customized attribute labels.

	 * If not declared here, an attribute would have a label that is

	 * the same as its name with the first letter in upper case.

	 */

	public function attributeLabels()

	{

		return array(

			'verifyCode'=> Yii::t('your-message-name','Verification Code'),

			'email'=> Yii::t('your-message-name','email'),

			'password'=>Yii::t('your-message-name','password'),

			'comfirmpassword'=>Yii::t('your-message-name','comfirmpassword')

		);

	}


    

其中:your-message-name 是 你自己的翻译文件的名称,对应的文件在app的protected/message/zh_cn/your-message-name.php


该文件返回一个key=》value的数组。key就是调用yii::t()的消息,value就是对应的翻译结果。





其他语言的以此类推。





注意!





your-message-name 是你自己定义的,跟你的消息翻译的文件名称一样,就可以了。


yii的消息翻译文件是 yii,你可以在framework/message/LanguageID/下看到,所以,你的消息文件名称就不能使用这个名称了!

如果是在其他的模块中呢,我想将语言文件放到对应的模块下的 message 目录中去,这个怎么处理?

hiscaler,你好!

如果你要使用模块里面的消息,可以这么处理:假设你的模块 名称 是abc

Yii::t(‘abc[size=“7”][color="#0000FF"].[/color][/size]mymessage’, ‘message’);

貌似直接这样不行,会提示找不到 abc.php 文件,请问还应该在哪里设置一下呢?多谢。

我在 config/main.php 里设置了’language’=>‘zh_cn’,却不能显示中文,包括导航、消息、页脚等都是英文的。

请教怎样设置?

设置了

‘sourceLanguage’=>‘zh_cn’,

‘timeZone’ => ‘Asia/Shanghai’,

还是不行。

你有没有建立文件:

protected/messages/zh_cn/Base.php

translation.php 文件,就是放翻译的词句的那个文件要用转换软件转成utf8才不会乱码,因为yii框架是使用utf8