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分页函数
Jul 08 PHP
基于mysql的论坛(1)
Oct 09 PHP
第四节--构造函数和析构函数
Nov 16 PHP
dedecms采集中可以过滤多行代码的正则表达式
Mar 17 PHP
MySQL授权问题总结
May 06 PHP
PHP 程序员的调试技术小结
Nov 15 PHP
php读取EXCEL文件 php excelreader读取excel文件
Dec 06 PHP
PHP按行读取文件时删除换行符的3种方法
May 04 PHP
PHP实现的博客欢迎提示功能(很特别哦)
Jun 05 PHP
PHP判断上传文件类型的解决办法
Oct 20 PHP
为你总结一些php系统类函数
Oct 21 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
Nov 10 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
用IE远程创建Mysql数据库的简易程序
2006/10/09 PHP
用ADODB来让PHP操作ACCESS数据库的方法
2006/12/31 PHP
PHP开发注意事项总结
2015/02/04 PHP
php通过array_merge()函数合并两个数组的方法
2015/03/18 PHP
背景音乐每次刷新都可以自动更换
2007/02/01 Javascript
默认让页面的第一个控件选中的javascript代码
2009/12/26 Javascript
JS中window.open全屏命令解析及使用示例
2013/12/11 Javascript
从零学jquery之如何使用回调函数
2014/05/16 Javascript
jQuery实现拖动效果的实例代码
2017/06/25 jQuery
babel的使用及安装配置教程
2018/02/22 Javascript
nuxt框架中路由鉴权之Koa和Session的用法
2018/05/09 Javascript
React key值的作用和使用详解
2018/08/23 Javascript
微信小程序自定义带价格显示日历效果
2018/12/29 Javascript
ES6 Set结构的应用实例分析
2019/06/26 Javascript
es6数组includes()用法实例分析
2020/04/18 Javascript
在Linux命令行终端中使用python的简单方法(推荐)
2017/01/23 Python
Python绘制3d螺旋曲线图实例代码
2017/12/20 Python
用Python实现KNN分类算法
2017/12/22 Python
python中不能连接超时的问题及解决方法
2018/06/10 Python
Django unittest 设置跳过某些case的方法
2018/12/26 Python
Python秒算24点实现及原理详解
2019/07/29 Python
Python线程threading模块用法详解
2020/02/26 Python
python3 xpath和requests应用详解
2020/03/06 Python
使用CSS3配合IE滤镜实现渐变和投影的效果
2015/09/06 HTML / CSS
简约控的天堂:The Undone
2016/12/21 全球购物
美国玩具公司:U.S.Toy
2018/05/19 全球购物
测试时代收集的软件测试面试题
2013/09/25 面试题
地理科学专业毕业生求职信
2013/10/15 职场文书
财务人员个人求职信范文
2013/12/04 职场文书
开办饭店创业计划书
2013/12/28 职场文书
学习自我鉴定
2014/02/01 职场文书
工商治理实习生的自我评价分享
2014/02/20 职场文书
新娘婚礼答谢词
2015/09/29 职场文书
一年级下册数学教学反思
2016/02/16 职场文书
2016年教师党员承诺书范文
2016/03/24 职场文书
Redis唯一ID生成器的实现
2022/07/07 Redis