Translation $服务器上的Yii文件自动翻译[';HTTP#u ACCEPT_语言';]

Translation $服务器上的Yii文件自动翻译[';HTTP#u ACCEPT_语言';],translation,yii,Translation,Yii,我想在我的protected/views/layouts/main.php中进行yii文件翻译和设置: <?php if(preg_match('/de/', $_SERVER['HTTP_ACCEPT_LANGUAGE'])) Yii::app()->language='de'; ?> 在protected/config/main.php中,我设置了'sourceLanguage'=>'en_-us','language'=>'en' 我有两个语言文件夹vi

我想在我的
protected/views/layouts/main.php
中进行yii文件翻译和设置:

<?php
  if(preg_match('/de/', $_SERVER['HTTP_ACCEPT_LANGUAGE']))
    Yii::app()->language='de';
?>

protected/config/main.php
中,我设置了
'sourceLanguage'=>'en_-us'
'language'=>'en'

我有两个语言文件夹
views/site/de
views/site/en

当使用
Yii::app()->language='de'时,不会加载de目录中的文件layout/main
视图中调用code>。但是,当我设置
'language'=>'de'
时,它会加载到配置文件中


是否有办法修复此问题,以便根据用户的浏览器语言使用语言文件夹

但是为什么要在视图中设置
Yii::app()->language
?我认为,这个问题可能就在其中——因为此时所有翻译的消息都已加载。所以,尝试在控制器(或过滤器)中执行此操作