您的位置:首页 > 编程语言 > PHP开发

ThinkPHP - 模板引擎

2016-02-03 17:39 225 查看
1、导入css/js文件
- CSS文件
<!--<link rel="stylesheet" type="text/css" href="__CSS__/basic.css">-->
<!--<import type="css" file="Css.basic"/>-->
<!--<load href="__PUBLIC__/Css/basic.css" />-->

- JS文件
<!--<script type="text/javascript" src="__JS__/basic.js"></script>-->
<!--<import type="js" file="Js.basic" />-->
<!--<load href="__PUBLIC__/Js/basic.js" />-->

2、判断语句
- if
· if else
<if condition="$sex eq '1'">
男性
<else />
女性
</if>
· if elseif
<if condition="$age lt '18'">
未成年
<elseif condition="$age eq '18'"/>
18岁
<else />
成年
</if>

- switch
<switch name="num">//此时变量不加$
<case value="1">输出1</case>
<case value="2">输出2</case>
<default />默认项
</switch>

3、循环结构
- volist
<volist name="list" id="vo">
{$vo.id}
{$vo.name}
</volist>
- foreach 同volist相似
<foreach name="list" item="vo">
{$vo.id}
{$vo.name}
</foreach>
- for
· 格式
<for start="开始值" end="结束值" comparison="" step="步进值" name="循环变量名" >
</for>
· 例子
<for start="1" end="100">
{$i}
</for>
· 转换结果
for ($i=1;$i<100;$i+=1){
echo $i;
}

4、特殊标签
- 比较标签
系统支持的比较标签以及所表示的含义分别是:
eq    等于
neq    不等于
gt    大于
egt    大于等于
lt     小于
elt     小于等于
heq     恒等于
nheq     不恒等于
--------------------------------
<eq name="sex" value="1">男</eq>
<gt name="num" value="6">10>6</gt>
//这一种更好用
<compare name="num" value="5" type="GT">10>5</compare>

- 范围标签
· in 比较范围
<!--<in name="id" value="1,2,3">输出内容1</in>-->
<!--<notin name="id" value="1,2,3">输出内容2 </notin>-->
<!--<in name="id" value="1,2,3">输出内容1<else/>输出内容2</in>-->

· between 区间标签
<!--<between name="id" value="1,10">输出内容2</between>-->
<!--<notbetween name="id" value="1,10">输出内容1</notbetween>-->

· Present 标签
present标签来判断模板变量是否已经赋值。

· Empty
empty标签判断模板变量是否为空。

· Define 标签
define标签进行常量定义。

· Defined 标签
defined标签判断常量是否已经有定义。

· Assign 标签
assign标签进行赋值。

5、其他标签
- PHP标签
<?php echo 'Hello,world!'; ?>
//建议使用这种
<php>echo 'Hello,world!';</php>

- 修改左右定界符
在配置文件中
'TMPL_L_DELIM'=>'<{',
'TMPL_R_DELIM'=>'}>',

一、模板包含
- header.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" contect="text/html";charset=utf-8">
<meta name="keywords" content="[keywords]">
<meta name="description" content="[description]">
<title>[title]</title>
<load href="__PUBLIC__/Css/basic.css" />
</head>
<body>

- footer.html
<load href="__PUBLIC__/Js/basic.js" />
</body>
</html>

- index.html
<!-- 包含头文件 -->
<include file="Public:header" title="ThinkPHP框架" keywords="开源WEB开发框架" description="这里是描述内容" />

<div>
<p>nriotng</p>
</div>

<!-- 包含尾部文件 -->
<include file="Public:footer" />

二、模板渲染
1、自动开启模板渲染 设置配置文件
'LAYOUT_ON'=>true,//开启模板渲染
准备一个模板渲染页面,在页面中使用{__CONTENT__}接受具体模板页面的内容
如果在摸一个具体模板中不希望使用渲染模板,可以在页首添加{__NOCONTENT__}
2、不开启自动模板渲染可以在每一个具体页面的页首添加
前提是,已经有一个主要文件了。
<layout name='layout'/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: