TP多语言
来源:互联网 发布:js return 多个值 编辑:程序博客网 时间:2024/05/19 23:14
一、行为扩展
多语言:同样的内容,由于在不同的地区我们显示不同的翻译结果
总结一下:ThinpPHP给我们提供了哪些扩展
1,给我们封装好的功能类:Image.class.php UploadFile.class.php
2,驱动扩展类:类似于smarty, assign display驱动扩展类,
行为扩展:CBD Core + Behavior + Driver
行为:在那些时刻需要执行哪些动作,这些动作就称之为行为,时刻就称之为标签
所以我们还可以理解成在哪些标签上,执行哪些行为()
当我们打开index.php的时候:做了哪些动作?
定义常量 加载ThinkPHP.php
反映到代码中,是如何实现的?
1),在我们的项目配置文件目录中,创建一个标签配置文件(在某个时刻点执行哪些动作)
2)要想实现多语言,我们首先要保证在项目中存在词库(不同的文字的翻译结果)
那么这些词库(翻译结果保存到哪里呢?)
保存到项目的Lang目录下面
Lang语言包分为多个子目录,例如中文 zh-cn存在一个zh-cn的目录,在这个子目录里面写的是翻译的结果,便于管理
3)词库也有了,我们如何在控制器层和视图层使用:
控制器使用:L(‘变量名‘)
在视图层使用:
4)要想使用翻译的结果,需要先在配置文件中开启语言检测的功能
如何开启:
5)快捷方式,用来告诉系统采用的是哪个语言包
在视图层中,如何使用翻译的结果
1,可以采用 {:L()}
2,使用ThinkPHP系统变量来表示:
$Think.lang.变量名称
例:
1、在D:\wamp\www\Think_php\App\Conf中创建tags.php文件写上
<?php
return array(
//时刻点=》执行的动作
'app_begin'=>array('CheckLang'),
);
?>
2、在config.php中写上
/*开启语言检查功能*/
'LANG_SWITCH_ON' =>true,//开启语言检测
'LANG_LIST' =>'zh-cn,en-us',
3、在D:\wamp\www\Think_php\App\Lang中创建文件夹en-us英文,zh-cn中文,en-us中新建文件common.php写上
<?php
return array(
'welcome'=>'welcome to china',
'message'=>'This is a test message',
)
?>
在zh-cn中创建common.php写上
<?php
return array(
'welcome'=>'欢迎来到中国',
'message'=>'这是一条测试信息',
)
?>
4、在LangActino.class.php中
public function show(){
//echo L('welcome');
$this->display();
}
在show.html中写
<a href="?l=zh-cn">简体中文</a>
<a href="?l=en-us">English</a>
{:L('welcome')}<br />
<!--{$Think.lang.welcome}-->
{:L('message')}<br />
<!--{$Think.lang.message}-->s
- TP多语言
- tp查询语言
- tp多表查询
- TP多图上传
- TP 多环境配置
- tp多表查询
- tp
- tp
- tp
- tp
- tp
- TP
- tp多图片上传经验
- TP 上传图片 (可上传多图)
- TP的多表查询+分页范例
- tp 多文件上传,文件及时预览
- tp框架中的多表查询操作
- TP-LINK集线器 多台机器上网设置
- Ubuntu安装mod_python
- 生活得有多么艰难
- HDU 1049 Climbing Worm
- Ubuntu12.04下安装Matlab 2012a
- android_eclipse快捷键
- TP多语言
- 算法—振兴中华(C语言版)
- HDU 1000 A + B Problem
- hdoj_2039 三角形
- TP仿sql注入
- 一个面试题,跟虚函数列表相关
- POJ3740Easy Finding(DLX入门)
- fftw库的使用
- 【Android 开发】:UI控件之复选框控件 CheckBox 的使用方法