意盟官网 交流论坛 程序下载 帮助文档 YimonTemplate交流QQ群:25766102

YimonTempalte简介:

  YimonTemplate 是一款 asp 类简易式模板处理引擎,整体实现原理源于 discuz 程序的思想,这为引擎的简易性做了最足的基础准备。引擎无需配置即可使用,兼容性强,扩展方便,功能更是非常人性化的。

  目前模板化已经不是一项架构必须考虑的条件,像是框架主义者推崇的原生态,像保守派推崇的 smarty,还有一 种新鲜的写法,就是 phpwind 的 <<<EOB 模式。而 YimonTemplate 采用的是简易版的标签解析模式,所有的程序与模板对应的解析都极其简洁,实用。

  YimonTemplate(ASP模板引擎)为程序开发配备常用函数及设置,开发中仅需要直接采用即可。拥有着缓存,模板重编,及模板缓存几个大的功能,同时,在用户没有命令其更新时,它一直会调用缓存模板,而不会去重新编译一次模板数据,设置让运行速度加快及更人性化。

  模板化的选择,还因架构而变,因地而制宜,请静下心来选择更适合你的模板引擎。

什么是模板引擎?

  模板引擎即程序与 html 分离的一种过程式,这个过程将完美的处理 asp 源码与 html 混写的痛苦,它能够更加简化数据结构,帮助开发人员与美工的紧密配合,更有助于程序为二次开发做前期准备。

  是商业系统,及开放平台首选的架构必需条件。

相关资源:

  YimonTemplate 官方下载 : http://www.yimon.com
  YimonTemplate 交流论坛 : http://www.yimon.net

基础知识:

变量语法:

<div>{$var}</div>
<div>{$var(array)}</div>

以上语法均可直接印出 asp 变量的值,变量及数组均可用这两种模式处理。

判断语法:

<div><!--{if var="abc"}-->判断成功<!--{/if}--></div>
<div><!--{if var="abc"}-->判断成功<!--{else}-->否则失败<!--{/if}--></div>
<div><!--{if var="abc"}-->var判断成功<!--{elseif var2="def"}-->var2判断成功<!--{/if}--></div>
<div>{if var="abc"} 判断成功(简易写法){/if}</div>

判断可以用以上四种,最后一种简易写法,建议少用,免得影响 DW 中的可视模式,基本上判断语法与 asp 中写法一模一样。条件中的变量或者数组,均可像写变量时一样。不需要过份担心字符或者数字。

循环语法:

<ul>
<!--{do while var>10}-->
<li>{$var}</li>
<!--{loop}-->
</ul>

<ul>
<!--{do}-->
<li>{$var}</li>
<!--{loop while var>10}-->
</ul>

<ul>
<!--{do until var>10}-->
<li>{$var}</li>
<!--{loop}-->
</ul>

<ul>
<!--{do}-->
<li>{$var}</li>
<!--{loop until var>10}-->
</ul>

<ul>
<!--{while var>10}-->
<li>{$var}</li>
<!--{/wend}-->
</ul>

<ul>
<!--{for var=1 10}-->
<li>{$var}</li>
<!--{/next}-->
</ul>

<ul>
<!--{foreach var arr}-->
<li>{$var}</li>
<!--{/next}-->
</ul>

在 YimonTemplate 中,循环支持以上七种,常用有{while var>10} {/wend} {for var=1 10} {/next} {foreach var arr} {/next} 三种写法。建议加<!-- -->再DW排版下更美观。

引用语法:

{template header}
{templatesub header}
{template $header}

引入公共模板的方法有三种,第一种是固定引入,第二种是将模板直接加载过来,第三种是变量引入,即变量改变时,引入的模板也不相同。这是非常实现的一项功能。为 GET 控制模板引入提供了方便。

静态变量:

{html var}

假如$var = '{$str}'; 那么, 执行时,将印出$str 的值, 注意分析, $var 的变量值是一句模板语法. 我们可以把模板语 法写在 ASP 中, 仍然通过静态变量来实现智能替换. 这个功能在于复用代码上, 很有效.

一些其它标签:

{eval Response.Write "12345"}        '执行一句 asp
<% Response.Write "12345" %>         '可以直接写 asp.
{echo "12345"}                       '输出一段文字

YimonTemplate主要函数

  1)Public Function Display( FileName ,html)  '输出解析结果,FileName(string):模板文件名。html(bool):是否返回html字符串,不返回则直接输出。
  2)Public Function CacheGet(FileName, html , Time) '判断缓存过期时间并获取缓存 FileName(string):缓存文件名 string html(bool):是否返回html字符串 time(int分钟):缓存过期时间
  3)Public Function CacheSet(Content,FileName) 生成HTML缓存文件

YimonTemplate相关配置

templates_default = "templates/default/"       '默认模板路径,相对程序根目录。
templates_new = false                          '设置当次更新
templates_time = 60                            '模板缓存过期时间,分钟计算

templates_postfix = ".html"                    '模板后缀
templates_auto = true                          '自动更新模板
templates_caching = ".asp"                     '模板缓存后缀

YimonTemplate实例必要设置

'实例对象
Dim tpl : Set tpl = New YimonTemplate

Dim SitePath : SitePath = "/demo/" '设置程序所在目录

tpl.SetPath(SitePath) '设置程序所在目录。
tpl.SetTplPath("templates/default/") '模板路径,请使用相对根目录的绝对路径
tpl.SetCachePath("data/cache/") '设置默认模板路径
tpl.SetCacheTplPath("data/templates/") '设置默认模板路径

创意联盟
流氓鱼
2012-08-23 14:00