在使用YII创建新站点后,我在protected/messages中添加了一个文件夹'fr',并添加了一个文件'site.php',其中包含:
return array('hello'=>'bonjour');
在view/layout/main.php中,我添加了以下代码:
<?php
// I change the language to english and french using session.
// This is just for example.
Yii::app()->language = 'fr';
// I also used Yii::app()->setLanguage('fr');
echo Yii::t('site','hello');
?>
Run Code Online (Sandbox Code Playgroud)
但语言没有翻译.我错在哪里.请建议
如果希望翻译在所有视图中正常工作,则应在控制器中设置语言.
为了将语言应用于所有控制器,在组件文件夹中创建扩展的新Controller.php文件,然后所有控制器都应该扩展类.在类覆盖方法(不要忘记调用)并在那里设置语言.例如:class ControllerCControllerControllerControllerinit()parent::init()
class Controller extends CController
{
public $layout='//layouts/column1';
function init()
{
parent::init();
Yii::app()->language = 'fr';
}
}
Run Code Online (Sandbox Code Playgroud)
这样,您可以在一个位置添加应该应用于所有控制器的其他内容
| 归档时间: |
|
| 查看次数: |
7491 次 |
| 最近记录: |