修改左右定界符
休要修改配置文件中的配置项
‘TMPL_L_DELIM’=>'<{‘, //修改左定界符
‘TMPL_R_DELIM’=>’}>’, //修改右定界符
模板中的赋值
this->assign(‘name’,’ZYH’);this->name=’ZYH2′;
$this->display();
模板的使用
模板文件夹下[TPL]/[分组文件夹/][模板主题文件夹/]和模块名同名的文件夹[Index]/和方法名同名的文件[index].html(.tpl)
更换模板文件的后缀名(修改配置文件)
‘TMPL_TEMPLATE_SUFFIX’=>’.html’,//更改模板文件后缀名
修改模板文件目录层次
‘TMPL_FILE_DEPR’=>’_’,//修改模板文件目录层次
模板主题
‘DEFAULT_THEME’=>’your’,//设置默认模板主题
需要在TPL下面新建一个your文件夹作为模板主题文件夹
如何动态修改模板主题?
1、在后台准备一个功能,修改config.php文件中的默认模板项
2、通过url传递 t=主题 参数可以修改不同的模板
‘DEFAULT_THEME’=>’your’,//设置默认模板主题
‘TMPL_DETECT_THEME’=>true,//自动侦测模板主题
‘THEME_LIST’=>’your,my’,//支持的模板主题列表
输出模板内容
a、display
1.display中没有参数
this->display();
2.可以带参数
本模块文件夹下的其他模板文件this->display(‘index2’);
其他文件夹下的模板文件 $this->display(‘Public:error’);
注意,仅仅需要在Tpl下有Public文件夹以及其中的error.html即可,不需要一定有Public模块
其他主题下的:文件夹下的:模板文件需要开启主题支持 this->display(‘my:Index:index’);
一个url路径this->display(‘./Public/error.html’);
this->display(‘./Public/error.html’,’utf-8′,’text/xml’);this->show(content);
3.fetch方法
获得模板文件中的内容,以字符串形式返回content=this->fetch(‘Public:error’);
4.show方法
不需要模板文件,可以直接输出模板内容content=this->fetch(‘Public:error’);
dump(content);
content=str_replace(‘h1′,’i’,content);(替换)
this->show(content);
模板替换
PUBLIC:会被替换成当前网站的公共目录 通常是 /Public/
ROOT: 会替换成当前网站的地址(不含域名)
APP: 会替换成当前项目的URL地址 (不含域名)
GROUP:会替换成当前分组的URL地址 (不含域名)
URL: 会替换成当前模块的URL地址(不含域名)
ACTION:会替换成当前操作的URL地址 (不含域名)
SELF: 会替换成当前的页面URL
更换模板变量规则,修改配置项
‘TMPL_PARSE_STRING’=>array( //添加自己的模板变量规则
‘CSS‘=>ROOT.’/Public/Css’,
‘JS‘=>ROOT.’/Public/Js’,
),
模板中的变量
一、变量输出
1.标量输出 {name}
2.数组输出 {name[1]} {name[‘k2’]} {name.k1}
3.对象输出 {name:k} {name->k}
二、系统变量 {Think.get.id}
三、使用函数 {name|strtoupper} 生成的编译后文件是
四、默认值 {name|default=’这里是默认值’}
五、运算符 + – * / % ++ — eg.{name++}
标签使用
导入CSS和JS文件
1、css link js scr
2.import
//可以更改默认文件夹 设置basepath属性
3.load
//方法可以自动检测导入的文件类型
模板中的基本语法
分支结构 ( > gt < lt == eq <= elt >= egt != neq === heq !== nheq )
1.
未成年
青春年少
成年
2.
循环结构
1.for
{$j} | abc |
2.volist
<volist name='list' id='v'>
{v.username}<br/>
</volist>
3.foreach
<foreach name='list' item='v' key='k'>
{k}-------{$v}<br/>
</foreach>
特殊标签
1、比较标签
eq或者 equal 等于 neq 或者 notequal 不等于 gt 大于 egt 大于等于 lt 小于 elt 小于等于 heq 恒等于 nheq 不恒等于
2.范围标签
in
between
3.present
标签来判断模板变量是否已经赋值,
empty标签判断模板变量是否为空,
5.Defined
判断常量是否已经定义
6.Define
在模板中定义常量
7.Assing
模板中变量赋值
在模板中直接使用PHP代码
在模板中变量用[变量]接受
模板渲染
1、自动开启模板渲染 设置配置文件
‘LAYOUT_ON’=>true,//开启模板渲染
准备一个模板渲染页面,在页面中使用{CONTENT}接受具体模板页面的内容
如果在摸一个具体模板中不希望使用渲染模板,可以在页首添加{NOCONTENT}
2、不开启自动模板渲染可以在每一个具体页面的页首添加
3.使用技巧
在渲染模板文件中也可以使用其他模板文件的内容
这里是渲染页面!!!
{CONTENT}