欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

destoon二次开发模板及调用语法汇总

程序员文章站 2023-01-08 23:10:56
一、模板存放及调用规则 模板存放于系统 template 目录,template 目录下的一个目录 例如:template/default/ 即为一套模板 模板文件以...

一、模板存放及调用规则

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

模板文件以 .htm 为扩展名,可直接存放于模板目录
例如 template/default/index.htm
也可以存放于模板目录的子目录里
例如:template/default/member/index.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 模板语法是兼容的。