thinkphp5 多语言功能用法

是否有$_GET['lang']

识别$_SERVER['HTTP_ACCEPT_LANGUAGE']中的第一个语言

检测到任何一种情况下采用Cookie缓存

如果检测到的语言在允许的语言列表内认为有效,否则使用默认设置的语言

 


1.配置

 


// 默认语言

'default_lang' => 'zh-cn',

// 是否开启多语言

'lang_switch_on' => true,

2.如果在自动侦测语言的时候,希望设置允许的语言列表,不在列表范围的语言则仍然使用默认语言,可以使用:

 


// 设置允许的语言

Lang::setAllowLangList(['zh-cn','en-us']);

3.配置语言包:语言包位置:

 


return [

'hello thinkphp' => '欢迎使用ThinkPHP',

'data type error' => '数据类型错误',

];

4.获取语言包的值

 


Lang::get(''www.djznrobot.com');

5.如果使用了多语言功能的话(假设,我们在当前语言包里面定义了' lang_var'=>'标题必须!'),就可以这样定义模型的自动验证

 


['title','require','{%lang_var}',1],

6.模板

 


{$Think.lang.lang_var}

7.变量传入支持

 


'file_format' => '文件格式: %s,文件大小:%d',

{:lang('file_format',['jpeg,png,gif,jpg','2MB'])}

posted @   学无边涯  阅读(834)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2018-10-14 python学习第五十天shutil模块的用法
点击右上角即可分享
微信分享提示