destoon二次开发模板及调用语法汇总
一、模板存放及调用规则
模板存放于系统template目录,template目录下的一个目录
例如:template/default/即为一套模板
模板文件以.htm为扩展名,可直接存放于模板目录
例如template/default/index.htm
也可以存放于模板目录的子目录里
例如:template/default/member/index.htm
在PHP文件里,使用模板语法为
<?php includetemplate('index'); ?>
或者
<?php includetemplate('index','member'); ?>
如果当前默认模板套系为default,则:
<?php includetemplate('header'); ?>
表示使用template/default/header.htm模板文件
<?php includetemplate('header','member'); ?>
表示使用template/default/member/header.htm模板文件
模板目录下在these.name.php是模板别名的配置文件,模板别名可以在后台模板管理修改。
模板解析后的缓存文件保存于cache/tpl/目录,扩展名为.tpl.php
二、模板语法
1、包含模板:{template'header'}或{template'header','member'}
{template'header'}被解析为
<?php includetemplate('header'); ?>
表示使用template/default/header.htm模板文件
{template'header','member'}
被解析为:
<?php includetemplate('header','member'); ?>
表示使用template/default/member/header.htm模板文件
2、变量或常量表示:
变量{$destoon}被解析为:
<?php echo$destoon; ?>
常量{DESTOON}被解析为:
<?php echoDESTOON; ?>
对于数组,标准写法应为例如{$destoon['index']},可简写为{$destoon[index]},模板在解析时会自动追加引号。
3、函数{func_name($par1,$par2)}
{func_name($par1,$par2)}被解析为
<?php func_name($par1,$par2); ?>
4、PHP表达式{phpexpression}
{phpexpression}被解析为
<?php expression ?>
5、条件语句{if$a=='b'}doA{/if}或{if$a=='b'}doA{else}doB{/if}或{if$a=='b'}doA{elseif$b=='c'}doC{else}doB{/if}
{if$a=='b'}doA{/if}被解析为
<?php if($a=='b'){ doA } ?>
{if$a=='b'}doA{else}doB{/if}被解析为
<?php if($a=='b'){ doA }else{ doB } ?>
{if$a=='b'}doA{elseif$b=='c'}doC{else}doB{/if}被解析为
<?php if($a=='b'){ doA }elseif($b=='c'){ doC }else{ doB } ?>
6、LOOP循环{loop$var$v}...{loop}或
{loop$var$k$v}...{loop}
{loop$var$v}...{loop}被解析为
<?php if(is_array($var)){ foreach($varas$v){ ...} } ?>
{loop$var$k$v}...{loop}被解析为
<?php if(is_array($var)){ foreach($varas$k=>$v){ ...} } ?>
三、特殊用法
1、变量或表达式可以用HTML注释,例如<!--{$destoon}-->仍被解析为<?phpecho$destoon;?>(可自动过滤此类注释)
2、可直接在模板里书写PHP代码,直接书写PHP代码与DESTOON模板语法是兼容的。