pfcTemplate 主要特点 1. 高效率 因为程序中分析变量、区块时没有采用正规表达式去做,而采用PHP内置字符串 处理函数来做,所以效率可能会稍高于同类产品 2. 易用性 使用此类只需简单的 创建类实例 -> 添加文件 -> 设置变量/区块 -> [如果有区块则解析] -> 解析文件 就可以完成. 采用常用的命名方式, 提供通俗易懂的API接口方法. 3. 多级区块处理 通过程序的多级区块处理功能可以实现很多复杂的效果, 可以进行无限层次的套嵌(机器性能允许) 4. 可处理多种来源的模板 模板不一定要做成文件, 可以是来自数据库或其它来源. $str = read_template_string(); $tpl->set_string('handle1', $str); 5. 变量可定制性 模板中的标识符是可以自行调整的. 如: 将简单变量的标识符定制为 "{/var/}", 只需如下调用: $tpl->varBegin = '{/'; $tpl->varEnd = '/}'; 将区块的定义设置成: "<!-- name -->content<!-- /name -->", 则只需: $tpl->blockStartBegin = '<!-- '; $tpl->blockStartEnd = ' -->'; $tpl->blockEndBegin = '<!-- /'; $tpl->blockEndEnd = ' -->'; 这样使得本类可以兼容同类产品,如PHPLIB的template、FastTemplate、Smart等. pfcTemplate说明 我没有在类中加入缓存的功能, 我认为 Smart的缓存实质上还是要用PHP解析的。对于更新快的网站,不适合用SMART 做是大家公认的。但对于更新要求不是很多的网站,用Smart 其实不如在程序中加入生成 html文件的功能。WEB服务器处理 HTML的速度是远比PHP快的。 如果你觉得在解析区块时要加上是否为最好一行的参数不方便, 可修改本类, 在输出时清除最后一个块定义。 但是这样做的结果会比现在的慢一点点。 看你项目的需要折衷吧! phpfans.net收集整理 |