模板继承

{block name="title"}<title>网站标题</title>{/block}

{block name="title"}<title>{$web_title}</title>{/block}

{block name="include"}{include file="Public:header" /}{/block}

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>{block name="title"}标题{/block}</title>
</head>
<body>
{block name="menu"}菜单{/block}
{block name="left"}左边分栏{/block}
{block name="main"}主内容{/block}
{block name="right"}右边分栏{/block}
{block name="footer"}底部{/block}
</body>
</html>

{extend name="base" /} {block name="title"}{$title}{/block}
{block name="menu"}
<a href="/" >首页</a>
<a href="/info/" >资讯</a>
<a href="/bbs/" >论坛</a>
{/block}
{block name="left"}
{/block}
{block name="main"}
{volist name="list" id="vo"}
<a href="/new/{$vo.id}">{$vo.title}</a>
<br/>
{$vo.content}
{/volist}
{/block}
{block name="right"}
最新资讯: {volist name="news" id="new"}
<a href="/new/{$new.id}">{$new.title}</a>
<br/>
{/volist}
{/block}
{block name="footer"}
{__block__} @ThinkPHP 版权所有
{/block}

{block name="footer"} {__block__}@ThinkPHP 版权所有 {/block}

{extend name="Public:base" /}

{extend name="./Template/Public/base.html" /}

{block name="title"}
<title>{$title}</title>
{/block}
<a href="/" >首页</a>
<a href="/info/" >资讯</a>
<a href="/bbs/" >论坛</a>

内置标签


循环输出标签
$list = User::all();
$this->assign('list',$list);

{volist name="list" id="vo"}
{$vo.id}:{$}<br/>
{/volist}

{volist name="list" id="data"}
{$data.id}:{$}<br/>
{/volist}

{volist name="list" id="vo" offset="5" length='10'}
{$}
{/volist}

{volist name="list" id="vo" mod="2" }
{eq name="mod" value="1"}{$}{/eq}
{/volist}

{volist name="list" id="vo" mod="5" }
{$}
{eq name="mod" value="4"}<br/>
{/eq}
{/volist}

{volist name="list" id="vo" empty="暂时没有数据" }
{$vo.id}|{$}
{/volist}

$this->assign('empty','<span class="empty">没有数据</span>');
$this->assign('list',$list);

{volist name="list" id="vo" empty="$empty" }
{$vo.id}|{$}
{/volist}

{volist name="list" id="vo" key="k" }
{$k}.{$}
{/volist}

{volist name="list" id="vo" }
{$i}.{$}
{/volist}

{volist name="list" id="vo" }
{$key}.{$}
{/volist}

{volist name=":fun('arg')" id="vo"}
{$}
{/volist}
FOREACH标签

{foreach $list as $vo}
{$vo.id}:{$}
{/foreach}

{foreach name="list" item="vo"}
{$vo.id}:{$}
{/foreach}

{foreach name="list" item="vo" }
{$key}|{$vo}
{/foreach}

{foreach name="list" item="vo" key="k" }
{$k}|{$vo}
{/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;
}
比较标签
{比较标签 name="变量" value="值"}
内容
{/比较标签}


{eq name="name" value="value"}
value
{/eq}
{equal name="name" value="value"}
value
{/equal}

{eq name="name" value="value"}
相等
{else/}
不相等
{/eq}

{gt name="name" value="5"}value{/gt}

{egt name="name" value="5"}value{/egt}

{eq name="" value="5"}
{$}
{/eq}

{eq name="vo:name" value="5"} {$} {/eq}

{eq name="vo['name']" value="5"}
{$}
{/eq}

{eq name="vo:name|strlen" value="5"}{$}{/eq}

{eq name="" value="value"}
相等
{else/}
不相等
{/eq}

{eq name="vo:name" value="$a"}{$}{/eq}

{compare name="name" value="5" type="eq"}value{/compare}

{eq name="name" value="5" }value{/eq}

条件判断
SWITCH标签
{switch name="变量" }
{case value="值1" break="0或1"}输出内容1{/case}
{case value="值2"}输出内容2{/case}
{default /}默认情况
{/switch}

{switch name="User.level"}
{case value="1"}value1{/case}
{case value="2"}value2{/case}
{default /}default
{/switch}

{switch name="Think.get.userId|abs"}
{case value="1"}admin{/case}
{default /}default {/switch}

{switch name="Think.get.type"}
{case value="gif|png|jpg"}图像格式{/case}
{default /}其他格式
{/switch}

{switch name="Think.get.userId|abs"}
{case value="1" break="0"}admin{/case}
{case value="2"}admin{/case}
{default /}default
{/switch}

{switch name="User.userId"}
{case value="$adminId"}admin{/case}
{case value="$memberId"}member{/case}
{default /}default
{/switch}


{switch $User.userId}
{case $adminId}admin{/case}
{case $memberId}member{/case}
{/switch}
IF标签
{if condition="($name == 1) OR ($name > 100) "}
value1
{elseif condition="$name eq 2"/}
value2
{else /}
value3
{/if}

{if condition="strtoupper($user['name']) neq 'THINKPHP'"}
ThinkPHP
{else /}
other Framework
{/if}

{if condition="$ neq 'ThinkPHP'"}
ThinkPHP
{else /}
other Framework
{/if}

{if condition="$user:name neq 'ThinkPHP'"}
ThinkPHP
{else /}
other Framework
{/if}

{if condition="表达式"}
{if (表达式)}
{if 表达式}

IN和NOTIN

$id = 1;
$this->assign('id',$id);

{in name="id" value="1,2,3"}
id在范围内
{/in}

{notin name="id" value="1,2,3"}
id不在范围内
{/notin}

{in name="id" value="1,2,3"}
id在范围内
{else/}
id不在范围内
{/in}

{in name="" value="1,2,3"}
$_GET['id']
在范围内
{/in}


{in name="id" value="$range"}
id在范围内
{/in}

{in name="id" value="$s"}
id在范围内
{/in}
BETWEEN 和 NOTBETWEEN
{between name="id" value="1,10"}
输出内容1
{/between}

{notbetween name="id" value="1,10"}
输出内容2
{/notbetween}

{between name="id" value="1,10"}
输出内容1
{else/}
输出内容2
{/between}

{between name="id" value="1,3,10"}
输出内容1
{/between}

{between name="id" value="A,Z"}
输出内容1
{/between}

{between name="" value="1,5"}
输出内容1
{/between}

{between name="id" value="$range"}
输出内容1
{/between}

{between name="id" value="$Think.get.range"}
输出内容1
{/between}
RANGE

{range name="id" value="1,2,3" type="in"} 输出内容1 {/range}

PRESENT NOTPRESENT标签
{present name="name"} name已经赋值 {/present}

{notpresent name="name"} name还没有赋值 {/notpresent}

{present name="name"}
name已经赋值
{else /}
name还没有赋值
{/present}

{present name=""}
$_GET['name']已经赋值
{/present}
EMPTY NOTEMPTY 标签

{empty name="name"}
name为空值
{/empty}

{notempty name="name"} name不为空 {/notempty}

{empty name="name"}
name为空
{else /}
name不为空
{/empty}

{empty name=""} $_GET['name']为空值 {/empty}
DEFINED 标签

{defined name="NAME"} NAME常量已经定义 {/defined}


{notdefined name="NAME"} NAME常量未定义 {/notdefined}

{defined name="NAME"} NAME常量已经定义 {else /} NAME常量未定义
{/defined}
















