ThinkPHP多语言支持与多模板支持概述


Posted in PHP onAugust 22, 2014

本文以实例形式简述了ThinkPHP的多语言支持与多模板支持。是ThinkPHP中非常重要的技巧,分享给大家供大家参考。具体如下:

一、ThinkPHP多语言支持:

config.php配置文件中添加:

//多语言支持设置
'LANG_SWITCH_ON'=>true,
'DEFAULT_LANG'=>'zh-cn',
'LANG_AUTO_DETECT'=>true,
'LANG_LIST'=>'en-us,zh-cn,zh-tw',

Home/Lang/文件夹下建立三个文件夹,分别为zh-cn ,en-us ,zh-tw 分别代表简体中文,英文,繁体中文

文件夹下可以建立与模板对应的文件,或者公用文件common.php

zh-cn/common.php页面如下:

<?php
return array(
 'welcome'=>'你好',
 'lan'=>'简体中文', 
);
?>

en-us/common.php页面如下:

<?php
return array(
 'welcome'=>'how are you fine?',
 'lan'=>'english', 
);
?>

zh-tw/common.php页面如下:

<?php
return array(
 'welcome'=>'你好',
 'lan'=>'??中文', 
);
?>

模板index.php代码如下:

欢迎:{$Think.lang.welcome} 语言:{$Think.lang.lan}
<a href="?l=zh-cn" rel="external nofollow" >简体中文</a>
<a href="?l=en-us" rel="external nofollow" >english</a>
<a href="?l=zh-tw" rel="external nofollow" >繁?中文</a>

或者在Action的方法里直接定义:L('demo','测试');这样,在模板里就可以直接应用了:{$Think.lang.demo}
对于在模型中,比如有:array('uname','require','用户名必填');可以这么用:array('uname','require','%name');

二、ThinkPHP多模板支持:

config.php配置文件中添加:

//多模板支持
 'TMPL_SWITCH_ON'=>true,
 'TMPL_DETECT_THEME'=>true,

/Home/Tpl/下建立其它皮肤文件夹,比如文件夹red,其中的文件与default文件中的一样。

在模板文件中添加:

<a href="?t=red" rel="external nofollow" >红</a>
<a href="?t=default" rel="external nofollow" >默认</a>

相信本文所述实例对大家ThinkPHP学习和开发有所帮助。

PHP 相关文章推荐
PHP语言中global和$GLOBALS[]的分析 之二
Feb 02 PHP
基于PHP文件操作的详解
Jun 05 PHP
PHP_NETWORK_GETADDRESSES: GETADDRINFO FAILED问题解决办法
May 04 PHP
PHP把JPEG图片转换成Progressive JPEG的方法
Jun 30 PHP
ThinkPHP 404页面的设置方法
Jan 14 PHP
PHP中each与list用法分析
Jan 08 PHP
Yii视图操作之自定义分页实现方法
Jul 14 PHP
php加密之discuz内容经典加密方式实例详解
Feb 04 PHP
Yii框架分页实现方法详解
May 20 PHP
thinkPHP多表查询及分页功能实现方法示例
Jul 03 PHP
PHP实现微信商户支付企业付款到零钱功能
Sep 30 PHP
Centos7 Yum安装PHP7.2流程教程详解
Jul 02 PHP
ThinkPHP中的三大自动简介
Aug 22 #PHP
PHP实现克鲁斯卡尔算法实例解析
Aug 22 #PHP
php中限制ip段访问、禁止ip提交表单的代码分享
Aug 22 #PHP
destoon出现验证码不显示时的紧急处理方法
Aug 22 #PHP
PHP中new static()与new self()的区别异同分析
Aug 22 #PHP
PHP中的替代语法简介
Aug 22 #PHP
destoon供应信息title调用出公司名称的方法
Aug 22 #PHP
You might like
PHP间隔一段时间执行代码的方法
2014/12/02 PHP
php的闭包(Closure)匿名函数初探
2016/02/14 PHP
Thinkphp和Bootstrap结合打造个性的分页样式(推荐)
2016/08/01 PHP
浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)
2017/03/14 PHP
phpStudy2016 配置多个域名期间遇到的问题小结
2017/10/19 PHP
input 输入框内的输入事件详细分析
2010/03/17 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
2013/11/10 Javascript
JQuery 实现在同一页面锚点链接之间的平滑滚动
2014/10/29 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
2015/03/12 Javascript
轻松使用jQuery双向select控件Bootstrap Dual Listbox
2015/12/13 Javascript
简单介绍JavaScript数据类型之隐式类型转换
2015/12/28 Javascript
JS中this上下文对象使用方式
2016/10/09 Javascript
Javascript迭代、递推、穷举、递归常用算法实例讲解
2019/02/01 Javascript
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
2019/04/01 Javascript
微信小程序 slot踩坑的解决
2019/04/01 Javascript
基于three.js实现的3D粒子动效实例代码
2019/04/09 Javascript
Layui之table中的radio在切换分页时无法记住选中状态的解决方法
2019/09/02 Javascript
js实现mp3录音通过websocket实时传送+简易波形图效果
2020/06/12 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
简单上手Python中装饰器的使用
2015/07/12 Python
Python类属性的延迟计算
2016/10/22 Python
Python win32com 操作Exce的l简单方法(必看)
2017/05/25 Python
用python实现对比两张图片的不同
2018/02/05 Python
Python实现线程状态监测简单示例
2018/03/28 Python
pycharm 解除默认unittest模式的方法
2018/11/30 Python
python爬虫超时的处理的实例
2018/12/19 Python
python通过tcp发送xml报文的方法
2018/12/28 Python
Hotels.com爱尔兰:全球酒店预订
2017/02/24 全球购物
数字天堂软件测试面试题
2012/12/23 面试题
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2012/05/30 面试题
我的老师教学反思
2014/05/01 职场文书
爱国演讲稿500字
2014/05/04 职场文书
2015年初一班主任工作总结
2015/05/13 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
Python爬虫之爬取某文库文档数据
2021/04/21 Python
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server