XingTemplate 使用说明
/**
* 程序名称: xingTemplate 模板引擎 1.00
* 作者: Xing Boyuan
* E-mail: xbantu@qq.com
* 最后更新日期: 2009-04-13 23:00
*
* 功能: 本xingTemplate 是一个基于PHP的模板引擎,主要对于PHP程序的方面快速开发而设置.它可以快速将您的模板文档编译为PHP文件,然后进行调用输出。
* 有效的提高项目的开发速度及管理。
* xingTemplate 模板引擎的特点,内置输出缓存管理。提高PHP程序的处理速度。方便快捷的模板语法风格.
*
* 特点:
* 支持无限子模板套用,自动模板读取所需资源,并且及时释放资源,严格的资源利用管理机制.
* 可自定义模板语法标签
* 支持更改提示语言种类
* 完善的错误提示机制
* 高效快速的编译速度
* 简易的模板语法的使用方法
* 可控制是否直接插入PHP代码
* 支持模板输出缓存
* 支持模板文件大小限制
* 附带模板引擎运行时间统计功能
* 更多xingTemplate特点,等待您的发现.
*
* xingTemplate 是一个免费的软件,您可以把在自己的商业项目中,并且您对此项目拥有所有权,但在 xingTemplate 基础上进行升级的
* 版本,同样必须是免费的,为开源软件做出我们的一份努力。
*
**/
使用 include 'xingTemplate.php'; // 调用模板文件,相关设置也在此文件中.
更详细的手册:http://www.xingTemplate.com/
********************************************************************************************8888
下面我们开始介绍 XingTemplate 的语法知识
XingTemplate 语法部分,不区分大小写。但变量名,以及执行代码区分大小写。
它所含有的语法格式如下
if
else
elseif / else if
foreach
while
for
_
_e
_p
支持自定义标示符,这里我们默认使用 { }
各种语法我们举例说明:
if
{if $var == 1}
{/if}
{if $var == 1}
{else}
{/if}
{if $var == 1}
{elseif $var == 2} // 这里的[elseif] 可以分开写 [else if]
{else}
{/if}
foreach
{loop $array as $val} // 这里语句和PHP中相同 也可使 $array as $key=>$val
{/loop}
while
{while $var == 1}
{/while}
for
{for $i=0;$i<10;$i++} // 这里沿用了PHP的格式
{/for}
_ // “_” 在XingTemplate中的意思是,它后边的内容将被看作PHP代码执行。
{_ $var = 1}
{_e $var} // 这段的意思是 echo $var;
{_p $var} // 这段的意思是 print_r($var); 通常在需要查看数组结构时使用。 通常情况下建议使用 {_e }
例如: {_e substr($string,0,2)} // 输出函数的结果 {_e $new_var = substr($string,0,2)} 即输出并且返回赋值。
同样插入PHP代码也可以使用此方法
{_
// PHP code
}
同样在设置时,可以开始是否直接支持插入PHP代码
例如:
<?php
// PHP code
?>
这是一个标准的PHP代码格式,如果开启允许插入PHP代码,引擎将运行这些代码,相反,程序将按普通字符进行解析。
XingTemplate 同样支持插入子模版,方法是
{xingTemplate 模板名}
// 在设定的模板目录中,有模板名为 default.html(模板后缀名) , 此代码就为 {xingTemplate default}
在模板中使用变量或类:
{$var}
{$var['key']}
{$class->new_var}
{$class->new_function()}
同样XingTemplate模板引擎也提供了详细的错误返回机制,您可以通过引擎提供的错误信息,迅速的找到错误所在,并且予以更正。
XingTemplate模板引擎,提供了二层缓存,一层是,引擎将模板文件编译为PHP文件,称一层缓存。当PHP文件代入您所需要的数据,就会生成用户所需要的页面,这时引擎会生成二层缓存,以提高系统的效率。同样您可以关闭二层缓存,使用其他缓存机制。
一层二层缓存目录,以及后缀名,在XingTemplate.php 文件中可以进行设置. 文件有详细注释。
这里要讲解一下 二级缓存 ,二级缓存有些特殊,因为PHP文件每次运行,根据变量的值不同,而会生成不同信息的页面,但最终是调用的一个模板文件。
所以引擎在这里增加的二层缓存标示符,以让引擎识别并调用相应的缓存文件。
$xingTemplate->xingTemplate_CName = '';
此项为设置二层缓存标示符号,如果为空,引擎会自动调用当前URL并进行MD5值运算,取得的结果将作为标示符。 在非特殊情况下,此方法已经够用了。
XingTemplate 模板引擎也继承了其他模板引擎的优点,比如 模板注释功能 {* 这是一个注释 *} 或者 {# 这是一个注释 #} 使用注释的内容,模板引擎将在编译时忽略。
Xingtemplate 模板引擎,也提供了缓存清理功能,防止文件过多造成空间浪费。
$xingTemplate->xingTemplate_clean();
// 默认将清理掉二层缓存 ,同样可以指定cache ,即可清理一层缓存. $xingTemplate->xingTemplate_clean('cache');
可以使用 $xingTemplate->Is_cache('default'); 来判断当前模板文件的二层缓存是否存在或者有效,如果存在或有效将返回 true , 相反返回 false .
最后, 模板输出
$xingTemplate->display('default'); 将输出用户所需要的页面。
此方法,支持三个值,第二个值 为设置输出方式,默认为直接输出。 [display | output]
$html = $xingTemplate->display('default','output'); //此方法为把引擎编译后的内容返回给$html 而不进行直接输出。
$xingTemplate->display('default','display',1); 此方法为,忽略二层缓存,取得最新内容,一般为调试时使用。
$xingTemplate->xingTemplate_Runtime; 在模板输出后可以取得模板引擎所运行的时间。