阅读模式:

Thinkphp 3.2.3 设置多语言支持

查看:6434  回复:0  类型:  来源:ThinkPHP  标签 thinkphp

        Thinkphp 中多语言的设置,获取不同的配置语言包数据,再把数据传给模板,在模板中获取对应的变量,实现语言切换。

具体配置:

    在模块的公共配置目录(Application/Common/Conf/tags.php)中简历tags.php配置文件

//配置文件tags.php
return array(     
    // 添加多语言支持检测,
    //自动去加载行为库中的类文件 ThinkPHP/Library/Behavior/CheckLangBehavior.class.php
    'app_begin' => array('BehaviorCheckLang'),    
);

    在公共配置文件(Application/Common/Conf/config.php)中进行语言开启的配置

'LANG_SWITCH_ON' => true,   // 开启语言包功能
'LANG_AUTO_DETECT' => true, // 自动侦测语言 开启多语言功能后有效
'LANG_LIST'        => 'zh-cn,en-us,zh-tw', // 允许切换的语言列表 用逗号分隔
'VAR_LANGUAGE'     => 'l', // 默认语言切换变量

    语言包读取的顺序

ThinkPHP/Lang/zh-cn.php 框架底层语言包
Application/Common/Lang/zh-cn.php 应用公共语言包
Application/Home/Lang/zh-cn.php Home模块语言包
Application/Home/Lang/zh-cn/user.php Home模块的User控制器语言包

    通过上面的加载顺序,在对应的目录添加对应的语言包文件,进行语言的切换,语言包的写法和框架底层语言包写法一样,每种语言对应一个语言包文件。

return array(
    'username'     => '用户名',
    'password' =>    '密码',
);

    L()方法可以获取上面设置的所有语言变量,L('指定的语言'),可以在控制器中获取所有指定的语言变量并通过$this->assign()方法赋值到前台模板中。语言切换通过浏览器get请求hl参数指定。

分享到:
0 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:4305关于PHP程序员技术职业生涯规划   阅读:3323centos 7搭建zabbix3.4   阅读:7146php打印九九加法表   阅读:11613mysql的四种索引类型   阅读:23599mysql数据一键导出到csv文件   阅读:6234企业让你去面试,可能不是真的招人   阅读:6357centos7.3安装mongodb3.6   阅读:8218centos 7 安装 php-7.1.3   阅读:21351“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4581mongodb设置shell开机启动脚本   阅读:11110centos7中颁发CA证书并开启web https   阅读:8813centos 7搭建zabbix3.4   阅读:7146centos 7.2 添加php7 的 php-fpm 开机启动   阅读:25806面试的时候和你谈理想,是理想or入坑?   阅读:11452linux php7编译安装mongodb扩展   阅读:9588“米粉节”背后的故事——小米网抢购系统开发实践   阅读:4581csv文件一键导入数据到mysql数据库   阅读:7288企业让你去面试,可能不是真的招人   阅读:6357php文件下载防盗链   阅读:10503linux top命令详解   阅读:10237php设置cookie为HttpOnly防止XSS攻击   阅读:13578linux时间戳有趣的情人节秒1234567890   阅读:5931封装php redis缓存操作类   阅读:9825shell脚本统计当前服务器并发连接数   阅读:8338栈和堆的区别   阅读:5533解决 nginx 413 request entity too large   阅读:4932php设置cookie为HttpOnly防止XSS攻击   阅读:13578centos7开启交换内存   阅读:11745什么是天使轮?什么是A轮融资?B轮融资?   阅读:5590什么是天使轮?什么是A轮融资?B轮融资?   阅读:5590面试的时候回去等通知,等电话的真实意思   阅读:25201移动端js触摸touch详解(附带案例源码)   阅读:17707给php7安装redis扩展库   阅读:8861linux top命令详解   阅读:10237html5 离线缓存的使用   阅读:4761程序员找工作三要素(必看)   阅读:6115linux命令中执行php脚本   阅读:8815web项目高并发量网站解决方案   阅读:5093php冒泡排序法   阅读:15244霍金24岁博士毕业论文在线预览   阅读:6130mysql共享锁和排他锁详解   阅读:8001centos 7 开启网络   阅读:7721面试都会问你为什么你从上一家公司离职的真实意思   阅读:11860什么是天使轮?什么是A轮融资?B轮融资?   阅读:5590centos 7 修改系统屏幕分辨率   阅读:47521知乎百万赞作者告诉你:年薪百万的人都在靠什么赚钱   阅读:7316php swoole搭建简单的聊天室   阅读:5043栈和堆的区别   阅读:5533centos 7搭建zabbix3.4   阅读:7146