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