ThinkPHP - 模板引擎

时间:2022-08-06 07:03:48
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'/>