Yii2.0 多语言设置(高级版配置方法) [ 2.0 版本 ]
1.设置默认语言:在mail.php配置文件加上:'language'=>'zh_CN';
2.多语言切换 (我这边是在site控制器里面操作的所以用的'/site/language'
)
html代码 :
<a href="<?php echo Yii::$app->urlManager->createUrl(['/site/language','lang'=>'zh_CN']);?>">中文</a>
<a href="<?php echo Yii::$app->urlManager->createUrl(['/site/language','lang'=>'en']);?>">English</a>
<p class="login-box-msg"><?=Yii::t('yii','Hello');?></p>
3.site控制器增加方法
//语言切换
public function actionLanguage(){
$language= \Yii::$app->request->get('lang');
if(isset($language)){
\Yii::$app->session['language']=$language;
}
//切换完语言哪来的返回到哪里
$this->goBack(\Yii::$app->request->headers['Referer']);
}
高级版注意需要在main.php内暂时开启访问权限,不然会不生效
'as access' => [
... ...
'allowActions' => [
//这里是允许访问的action
'*'
]
],
4.高级模板路径:
5.中文语言文件配置
6.英文同理
7.修改入口文件web/index.php :
(new yii\web\Application($config))->run();
改为:
$application = new yii\web\Application($config);
$application -> language = isset(\Yii::$app->session['language']) ? \Yii::$app->session['language'] : 'zh_CN';
$application -> run();
这样就可以实现语言切换了
zavier
注册时间:2016-04-01
最后登录:2024-07-09
在线时长:5344小时55分
最后登录:2024-07-09
在线时长:5344小时55分
- 粉丝19
- 金钱10895
- 威望30
- 积分64635
共 6 条评论
沙发自己坐
闲得无聊顶一下
闲的无聊回一下
顶一下!!!!
谢谢!!!
666666666666666666666666666666666666666666666666666
999999999999999999999999999999999999999999999999999
收藏!好文章 。
暂时开启访问权限要怎么写,有格式吗。