background image

采用 set_var(),而 FastTemplate 采用 assign()),用法几乎也是一致的--可以采用(key, 
value)的方式,也可以直接传递一个数组(array(key=>value))。

4

模板文件的处理

都是采用为每一个模板文件指定一个句柄(handler)的办法,同时句柄也可以作为变
量的值替换另一模板文件中的变量。

5

解析、输出过程

都是需要调用 parse()方法(这个方法名竟然是相同的)将需要输出的模板文件解析后
赋值给一个句柄,然后调用各自输出的方法(PHPLIB Template 中是 p(),FastTemplate
中是 FastPrint())输出该句柄的内容并结束处理。

6

重复解析的过程

比如从数据库中取出几条记录需要显示而模板文件只有可替换的一行变量的时候,就
很需要这样的功能。两者都具有这样的功能,只是使用时稍稍有些不同而已(PHPLIB 
Template 采用 parse(handler, value, true),而 FastTemplate 采用 parse(handler, .value)在值的
前面多加一个点),应该说 PHPLIB Template 的方法构造得相对优美一点。

7

区块解析的过程(或者可以称作动态解析)

想像一下你需要从数据库中取出符合条件的数据并显示在网页中--但是因为条件会不
尽相同,你并不能明确的知道会有多少条数据--这时候如果你又要采用模板,那么区
块就是最好的选择。它是在模板中用特定的符号定义的部分,这一部分可以反复的被解
析并添加到(而不是前一次的解析被后一次覆盖)输出网页中。区块也许就像下面显示
的一样(左边是 PHPLIB Template 采用的区块设置,而右边则是 FastTemplate 采用的):