首页 > 开发 > PHP > 正文

新作模板处理类,有兴趣的可以试试

2024-05-04 22:54:43
字体:
来源:转载
供稿:网友
中国最大的web开发资源网站及技术社区,
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快的。

如果你觉得在解析区块时要加上是否为最好一行的参数不方便, 可修改本类, 在输出时清除最后一个块定义。
但是这样做的结果会比现在的慢一点点。 看你项目的需要折衷吧!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表