zoukankan      html  css  js  c++  java
  • 黄聪:Destoon模板存放及调用规则

    一、模板存放及调用规则

    模板存放于系统 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 模板语法是兼容的。

  • 相关阅读:
    反向代理实例
    nginx常用命令和配置
    nginx的安装
    Can Live View boot up images acquired from 64bit OS evidence?
    What is the behavior of lnk files?
    EnCase v7 search hits in compound files?
    How to search compound files
    iOS 8.3 JB ready
    Sunglasses
    现代福尔摩斯
  • 原文地址:https://www.cnblogs.com/huangcong/p/2570101.html
Copyright © 2011-2022 走看看