yii2怎么设置切换语言
发布时间 - 2020-07-20 00:00:00 点击率:次yii2设置切换语言的方法:首先配置组件;然后在web同级目录下创建messages目录,此目录存放语言配置文件;接着给每个controller进行初始化;最后编写控制器方法,实现语言切换即可。
Yii2.0 实现多语言切换
推荐:《yii教程》
1.配置组件
'components' => [
'i18n' => [
'translations' => [
'*' => [
'class' => 'yii\i18n\PhpMessageSource',
//'basePath' => '/messages',
'fileMap' => [
'app' => 'app.php',
],
],
],
],
]2.创建messages目录
在web同级目录下创建messages目录,此目录存放语言配置文件
创建messages/zh-CN/app.php,zh-CN为语言标识( \Yii::$app->session['language'] = 'zh-CN' 即配置为zh-CN语言),app.php中存放语言配置数组(app.php的名字由配置组件时‘app’选项确定)
下面时app.php文件内容
'操作',
'Search' => '搜索',
'Reset' => '重置',
];3.实现语言切换
有两种方法:
a:
需要给每个controller进行初始化(都写上init函数),在init函数中主要就是给Yii::$app->language 赋值。例如:Yii::$app->language = 'zh-CN'。
b:
在web/index.php(入口文件)中,将创建应用的代码改为下面的代码
$application = new yii\web\Application($config); $application->language = isset(\Yii::$app->session['language']) ? \Yii::$app->session['language'] : 'en'; $application->run();
4.编写控制器方法,实现语言切换
public function actionLanguage(){
$language= \Yii::$app->request->get('lang');
if(isset($language)){
\Yii::$app->session['language']=$language;
}
//切换完语言哪来的返回到哪里
$this->goBack(\Yii::$app->request->headers['Referer']);
}要想实现语言的切换,只要带'lang'参数调用此方法就可以了!
# 配置文件
# 目录下
# 要想
# 有两种
# 写上
# 哪来
# 就可以
# 多语言
# 只要带
# 到哪里
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】
如何在搬瓦工VPS快速搭建网站?
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程
Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践
HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
javascript中数组(Array)对象和字符串(String)对象的常用方法总结
Laravel Fortify是什么,和Jetstream有什么关系
如何用搬瓦工VPS快速搭建个人网站?
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
iOS发送验证码倒计时应用
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?
北京网站制作的公司有哪些,北京白云观官方网站?
CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】
如何快速搭建二级域名独立网站?
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
如何基于PHP生成高效IDC网络公司建站源码?
如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体
如何快速搭建高效简练网站?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
做企业网站制作流程,企业网站制作基本流程有哪些?
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
EditPlus中的正则表达式 实战(1)
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
如何挑选优质建站一级代理提升网站排名?
网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?
Python结构化数据采集_字段抽取解析【教程】
标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
如何在IIS管理器中快速创建并配置网站?
详解vue.js组件化开发实践
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
Laravel如何创建自定义Facades?(详细步骤)
Laravel如何发送系统通知?(Notification渠道示例)
EditPlus中的正则表达式 实战(2)
JS中对数组元素进行增删改移的方法总结
Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用
C语言设计一个闪闪的圣诞树
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
如何在Tomcat中配置并部署网站项目?
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性


tion->run();