喜悦国际村's Archiver

帅的像人渣 发表于 2004-4-10 01:58 PM

[原创]新作模板处理类,有兴趣的可以试试~

类名称
                pfcTemplate

作者

        帅的像人渣    QQ: 1191391   E-mail: [email]netcat2@21cn.com[/email]

        如在使用过程中有什么问题或好的建议,欢迎与我交流

版权声明

        你可以随便传播、使用、修改、商业化本类,但是请保留类前面作者的名字及联系方式。 谢谢!

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快的。

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

Enjoy!

                                                        帅的像人渣
                                                        2004-02-19 23:24:43

sky_travel 发表于 2004-4-10 02:00 PM

不错
我再下载看看

nnnm 发表于 2004-4-10 02:04 PM

支持楼主这种开源的精神!

帅的像人渣 发表于 2004-4-10 02:07 PM

如果大家请兴趣请帮忙测试一下和PHPLIB相比速度如何。。

别人测试的才公正。。大家的眼睛是雪亮的嘛。

lfox 发表于 2004-4-10 02:07 PM

下了看,先顶。

akstrom 发表于 2004-4-10 02:19 PM

虽然不习惯用模板,还是帮你顶!!

sirli 发表于 2004-4-10 02:23 PM

虽然早就抛弃了模板,也帮你顶!!

开心果 发表于 2004-4-10 02:33 PM

原创的,永远纯支持~~

PS:如果觉得SMARTY只不过是生成模板/缓存,以提高运行速度;代码和美工分离,以提高开发速度。。。看得也太浅显了

HTML确实比PHP快,但是随着主机/网络速度的急剧提高,很多东西都将自动解决。HTML和PHP执行速度上的差别将不再是重点。SMARTY的作者很有远见,比国内很多就事论事、只顾眼前的模板原创者要更令人尊敬。模板是死的,SMARTY是活的、可发展的;PHP的最终目的,用最简单的方法,迅速让使用者实现一切,全球智慧支持。

yuguanglou 发表于 2004-4-10 02:35 PM

PHP的最终目的,用最简单的方法,迅速让使用者实现一切,全球智慧支持。

askswin 发表于 2004-4-10 02:55 PM

好东东要大家一起顶

lfox 发表于 2004-4-10 03:04 PM

HOHO,大家頂我也頂。

qsy_627 发表于 2004-4-10 03:04 PM

虽然偶不懂模版,单偶还是逛顶!!!!!

roseangel 发表于 2004-4-10 03:14 PM

渣渣的东东,偶都顶~:p :p

橡皮筋 发表于 2004-4-10 04:32 PM

不知道怎么用:crying: :crying:

yjjzjhzyp 发表于 2004-4-10 04:57 PM

up

支持你

帅的像人渣 发表于 2004-4-10 08:55 PM

有没有用PHPLIB的或用FASTTEMPLATE的帮忙测试一下速度~~~~~~~

txzwxm 发表于 2004-4-11 01:36 AM

收了

帅的像人渣 发表于 2004-4-11 01:29 PM

呵呵。好像支持的人不多。。

为什么别人随便发点东西就能精华、置顶什么的。。我的为什么没有人看看呢。。

难道我军的东西那么差?

WSQ 发表于 2004-4-13 02:29 PM

不是PHP的目标,应该是所有程序员的目标,用最简单的方法实现做好的效果和功能。

batman 发表于 2004-4-14 06:09 PM

正在研究,谢了
不过有没有程序嵌入功能(类似include的功能)?还有能否传参数进入被嵌入的程序?

页: [1] 2

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.