destoon 模板存放规则及语法参考

来源: https://destoon.cc/ 日期: 2019-03-01 19:55:43 人气: - 评论: 0

一、模板存放及调用规则

模板存放于系统 template 目录,template 目录下的一个目录
例如 template/default/ 即为一套模板

模板文件以 或 {template 'header', 'member'}

{template 'header'} 被解析为
<?php include template('header');?>
表示使用 template/default/header
被解析为 <?php include template('header', 'member');?>
表示使用 template/default/member/header 被解析为 <?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 $var $k $v}

{loop $var $v} 被解析为
<?php if(is_array($var)) { foreach($var as $v) { }?>
{loop $var $k $v} 被解析为
<?php if(is_array($var)) { foreach($var as $k=>$v) { }?>

三、特殊用法

1、变量或表达式可以用HTML注释,例如 <!--{$destoon}--> 仍被解析为 <?php echo $destoon; ?> (可自动过滤此类注释)
2、模板可以用<!--[注释内容]-->,进行注释,模板编译时会自动去除,不会显示在页面中。(V>=5.0) 3、可直接在模板里书写PHP代码,直接书写PHP代码与 DESTOON 模板语法是兼容的。