ThinkPHP 5 框架实现多语言 实例讲解
ThinkPHP 5 框架实现多语言
今天给大家分享一篇tp5框架多语言的实例
第一步: 您需要在配置文件中开启网站多语言, 并添加语言允许列表:
// 默认语言'default_lang' => 'zh-cn',// 语言允许列表'lang_list' => ['zh-cn','en-us'],
第二步: 添加 zh-cn.php 与 en-us.php 这两个语言包, 它们定义在application下lang目录中:
这两个语言包的具体内容如下:
1. zh-cn.php
<?phpreturn ['lang' => '中文'
];
2. en-us.php
<?phpreturn ['lang' => 'English'
第三步: 在模板文件中定义内容:
<p>您当前的语言为: {:lang('lang')}</p>
已经大功告成啦! 我们打开首页去访问看看
我们可以发现访问首页返回的是中文, 因为在config.php中, 默认的语言是zh-cn
接下来又出现了一个问题, 我需要怎么切换语言呢? 别急, 看代码
首先, 我们在首页写一个a链接, 做语言切换, 然后链接到我们的Index控制器replaceLang方法中.
<a href="/replaceLang">切换语言</a>
路由文件:
// 切换语言
Route::get('/replaceLang$', 'index/Index/replaceLang');
接下来就是最后一步, 也就是控制器中的代码
/*** 语言切换*/public function replaceLang(){$lang = \think\Lang::detect();switch ($lang) {case 'zh-cn':cookie('think_var', 'en-us');return $this->success('切换英文成功!');break;case 'en-us':cookie('think_var', 'zh-cn');return $this->success('切换中文成功!');break;//其它语言}}
ps: \think\Lang::detect(); 此方法用于获取当前语言.
大家都学会了吗? 是不是没有想象中的这么难. 本文自己原创内容, 转载请注明来处!
ThinkPHP 5 框架实现多语言 实例讲解相关推荐
- pic单片机内部时钟校准c语言,实例讲解PIC单片机的时钟设置
什么时钟? 首先我们先讲讲什么是时钟.时钟就是单片机的心脏.每跳动一下.整个单片机的各个电路就同步的动作一下.就好像我们做广播体操的时候 广播上喊的节拍1234 2234 3234....然后我们全部 ...
- think php a方法,PHP_ThinkPHP之A方法实例讲解,ThinkPHP的A方法用于在内部实例 - phpStudy...
ThinkPHP之A方法实例讲解 ThinkPHP的A方法用于在内部实例化控制器,其调用格式为: A('[项目://][分组/]模块','控制器层名称') 最简单的用法: $User = A('Use ...
- 无极菜单 php,ThinkPHP菜单无极分类 ThinkPHP菜单无极分类实例讲解
想了解ThinkPHP菜单无极分类实例讲解的相关内容吗,祝君圆梦在本文为您仔细讲解ThinkPHP菜单无极分类的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:ThinkPHP菜单无极分类, ...
- php rsa加密实例,关于PHP语言的RSA加密实例讲解
本文主要向大家介绍了关于PHP语言的RSA加密实例讲解,通过具体的内容向大家展示,希望对大家学习php语言有所帮助. 这几天做了一些接口的对接需要用到RSA加密,百度一番发现原来有个openssl_p ...
- java的无极分类,ThinkPHP菜单无极分类实例讲解
效果图如下 controller控制器代码: /** * 菜单列表 */ public function index(){ $menuList= Db::name('menu')->order( ...
- c语言中字符指针变量输入,C语言指针基础知识实例讲解
对程序进行编译的时候,系统会把变量分配在内存单位中,根据不同的变量类型,分配不同的字节大小.比如int整型变量分配4个字节,char字符型变量分配1个字节等等.被分配在内存的变量,可以通过地址去找到, ...
- 《GO语言圣经》:Bit数组实例讲解
<GO语言圣经>第六章方法中Bit数组实例讲解,与课后习题答案. 书中介绍了关于方法的语法,在最后给出一个实例--Bit数组实现集合这种数据结构. 目的 实现集合的数据结构,并能够做集合的 ...
- python手势识别_OpenCV+python手势识别框架和实例讲解
基于OpenCV2.4.8和 python 2.7实现简单的手势识别. 以下为基本步骤 1.去除背景,提取手的轮廓 2. RGB->YUV,同时计算直方图 3.进行形态学滤波,提取感兴趣的区域 ...
- c 语言 字符 查找,C 语言实例 - 查找字符在字符串中出现的次数
C 语言实例 - 查找字符在字符串中出现的次数 C 语言实例 C 语言实例 查找字符在字符串中的起始位置(索引值从 开始). 实例 #include int main() { char str[], ...
最新文章
- 如何查找历史线程阻塞原因_java并发编程-线程状态,线程阻塞方式,阻塞中的线程如何终止?...
- 10分钟学会React Context API
- orb_slam 编译错误
- hdu 4006 The kth great number 线段树/优先队列/set
- java基础知识——基础语法
- P3368-Frequent values【线段树】
- 查看网卡流量:nload
- Spring Boot的学习之路(02):和你一起阅读Spring Boot官网
- 【线性代数公开课MIT Linear Algebra】 第六课 AX=b与列空间、零空间
- D - 最长公共子序列问题-详细过程
- httpclient的post请求超时
- 处理和引发事件的规范
- 30岁过后,是继续上班,还是去做个小生意?
- vue判断列表中包含某一项_判断字符串中是否包含某个字符串
- 【LOJ2127】「HAOI2015」按位或
- java中级工程师所需的技能_中级Java开发工程师的工作职责描述
- 用matlab解系统框图,控制系统框图(请教matlab中怎么画控制系统流程框图?)
- 面试总结-接口测试面试题
- 「英语六级作文」整体框架-Essay Map
- 万能网页视频下载教程