欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-11-23 19:02:28
本文以实例形式简述了thinkphp的多语言支持与多模板支持。是thinkphp中非常重要的技巧,分享给大家供大家参考。具体如下: 一、thinkphp多语言支持: c...

本文以实例形式简述了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学习和开发有所帮助。