在所有网站视图中应用 Yii::app()->语言



我用yii…我想在我的网站底部将语言从阿拉伯语改为英语

它不适合我当我点击…我将让它离开函数并对所有视图

执行此操作

但是现在这个函数不起作用

public function actionLanguage()
 //This function to change language
{
    $lang = Yii::app()->request->getQuery('lang');
    if($lang=='ar') {Yii::app()->language='ar'; $this->redirect(array('site/index'));}
    if($lang=='en') {Yii::app()->language='en'; $this->redirect(array('site/index'));}
}

我使用下面的代码来更改语言。我有一个language动作,将语言保存到会话中。然后在每次页面加载时,我将应用程序语言设置为会话语言。

 public function actionLanguage($lang) {
    Yii::app()->session['_lang'] = $lang;
    $this->redirect(Yii::app()->request->getUrlReferrer());
 }

在我的Controller.php(所有其他控制器扩展此控制器)中,我否决init()功能来设置语言。

 public function init() {
    parent::init();
    $app = Yii::app();
    if (isset($app->session['_lang'])) {
        $app->language = $app->session['_lang'];
    }
 }

最新更新