确实。我也不太认同包括smarty,php lib在内的模板引擎。
但是毕竟是发展了几年的模板引擎,比起自己写,它们的BUG和出错几率会比较少。最近我一直在寻求使用PHP作为模板语言的模板引擎。也找到了几个。

解决方案 »

  1.   

    一直在用PHPLIB,感觉很好用的。。同时也加入了一些自己想要的个性化的代码。。
    有空看看DISCUZ。。
      

  2.   

    "smarty很死,几乎无法定义自己想要的模板标签" 这个不对吧
      

  3.   

    我也一直在用phplib ,另一个模板 phptal 大家有没有研究过????
      

  4.   

    我痛恨死smarty了,但是没有办法,我们现在的网站平台系统都是用smarty,没有办法,只有选择smarty。
    呵呵!其实有时候斩断后路,才会有前进的东西,如果要有新的大项目可能会考虑尝试新东西
      

  5.   

    我觉得smarty还可以,用着还算顺手,并且也使一些复杂的东西简单化了
    大家都这么讨厌SMARTY么?
      

  6.   

    我没用过smarty,我对模板的理解就是str_replace.呵呵。不过,smarty看起来,呵呵,很多人用啊。而且好评也很多。
      

  7.   

    我用str_replace会考虑它是否减慢了速度,减慢了多少。然后决定某些地方还是混杂编程,抛弃str_replace.不过,用过str_replace替换模板,感觉还不错,换版面的时候比较爽,反正内容都是差不多,结构改起来快啊。
      

  8.   

    自己写一个还是很好的,虽然一开始有bug,但以后可以慢慢改啊
      

  9.   

    我用的第一个模板就是smarty了,没有办法以前那个公司用的,我倒是不觉得效率高多少,只是方便多了
      

  10.   

    我用PHPLIB 也是属于恨SMARTY的那一类人.
      

  11.   

    大家不要曲解我的意思我只是想让大家明白smarty并不是最好,有很多公司招聘的时候,直接问你会不会smarty,拿会smarty的程度来衡量一个人php的水平,他却不知道有比smarty更好的~
      

  12.   

    呵呵,我觉得Smarty很好呀里面内置的很多功能,非常方便做项目的开发和维护,如果你项目小的话,采用phplib之类的还行,如果项目足够大,而且逻辑复杂,使用smarty是个好的选择。这不存在那个模板特别好或者不好的问题,关键是你自己什么样的功能就采用什么样的模板。
    phplib、smarty和smart template我都使过,其实本质都是一样的,就是不同的应用下选择最适合的,这最重要。如果自己项目需要,可以写一个合适自己的模板引擎,另外,最重要一点,Smarty是php.net推荐得引擎,而且经常能有人维护升级,其他的,包括phplib和smart template都已经停止开发,这很让人遗憾。
      

  13.   

    学smarty就像学一门新语言其实还有一种提高效率的方法就是采用模板思想,编译方法,用php生成php
    以前我也发过帖子说明我的想法当然也期望有常驻内存的php解释器不过目前我们吃住问题还是问题的时候,还是先考虑它们吧。
      

  14.   

    我认为 smarttemplate 不错。(不是 Smarty
      

  15.   

    没有研究过smarty不要轻易下结论,
    smarty编译以后的代码是PHP,HTML混合编排的,smarty提供plugin可以任意扩展,
    不要以为贬低老外写的程序就能提高自己的水平,老外写的确实有很多创意和想法在里面,
    有兴趣多花点时间比较一下各种模板的优缺点,写个国产的模板引擎出来。
      

  16.   

    没有研究过smarty不要轻易下结论。不要老以为老外写的程序就一定是最好的。诚然smarty有很多创意和想法在里面,但是它不一定是效率高的,灵活性高的。
      

  17.   

    说实话才开始用smarty的时候是不习惯,现在用多了,感觉不错,自己再扩展来个性化,十分的爽的
      

  18.   

    smarty 不错!
    谁说死啊?一点都不死!
      

  19.   

    没用过smarty
    以前用phplib,后来smarttemplate
    个人爱好吧,先不谈速度,从效率上来讲开始用感觉很方便,用多了感觉都不方便。
    前一阵子感觉jsp的template不错,不过好像PHP没有这个思想。
      

  20.   

    说到国产的,好像村里的龙卫国写了一个SuperTpl吧?
    好像也是个庞然大物。据说比smarty速度要快。
      

  21.   

    smarty 并没有做的最好,因为它编译后的模板太过臃肿,你可以打开smarty编译后的模板页面,里面都是些对象,而且很复杂,PHP对对象变量处理相比是很慢的,而且编译后的模板是不需要程序员去看的,何苦要搞的这么复杂,会影响速度。
    /////php的对象实质上跟数组没有太大差异,而且没有明确的资料表明对象处理就会慢。smarty的缓冲机制能够抵消模板编译造成的损失。另外,想用smarty,还需要熟悉它的一些专门的语法,好比又要学习一门新的语言(虽然不是很复杂,但是也是很麻烦的)。
    /////不认为smarty的语法复杂,可以说相当简单,比unix下的shell都简单。作为一个程序员,如果认为这个都算麻烦,那就真麻烦了最后,smarty很死,几乎无法定义自己想要的模板标签。
    ////smarty提供强大的外挂插件功能,而我在smarty基础上封装的freamwork,V部分收到的数据只是数组,只要如何按照布局显示数组里的元素,多数时间我只用两个标签section和if。下面介绍一种感觉不错的模板技术。discuz!的模板函数。
    discuz!的模板函数就是把模板中的标签,直接替换成php的语法,最后程序执行的结果实际是php和html混和的程序,这样程序速度是最快,没有人会反对这个说法吧。
    discuz!的模板函数很简洁,只有短短的几十行,比起smarty,要简洁太多了,这么简洁的代码,如果你要添加新的功能或者标签是非常简单的,同样实现MVC,而且速度比smarty绝对快。实现了灵活性和高速的完美结合。
    /////没有研究过,如果有时间值得研究。从discuz出现开始的确带来了不少令人耳目一新的技术。个人以为php中比较有意义的几个程序,suger-crm,phpbb,phpmyadmin再就是discuz了。不过不知道做了什么样的测试能够得到“速度比smarty绝对快”的结论。综上:smarty为了扩展性与功能,放弃了一部分速度。但是不能说他就不如其他模板。我用了这么些模板后最终将公司项目开发使用的模板定为smarty。不为别的,就为它不会莫名其妙出毛病,也不会因为程序员不同的爱好而写出诸多乱七八糟的tag来。中规中矩才是真~~
      

  22.   

    to ice_berg16(寻梦的稻草人) 想不想看看我的新架构~~忽忽~~
      

  23.   

    我用 dedetemplet ,哈哈
      

  24.   

    其实“discuz!的模板函数就是把模板中的标签,直接替换成php的语法”这种思想就已经错误,如果真正是为了速度的话,直接用PHP更来得实际,例如:
    function aa()
    {
       return "aaa";
    }在模板里用{$aaa}之类表示和 <?=aa()?>有区别吗?模板的功能与系统需求有很大的关系,比如,CMS系统,它需要更改灵活,可配置的标签,在这一点上,像dedecms,它使用像.NET的那种语法,那自定义属性和自定义标签的模板的方式就很有意义,用smarty就不是那么好了,同样的,论坛需要速度快,省资源,“discuz!的模板函数就是把模板中的标签,直接替换成php的语法”这种说法就有意义,所以凡事都要看需求,而不是简单的从速度上讨论谁快谁慢。
      

  25.   

    我自己写过一个模板引擎。
    也是编译的。速度不算快,但扩展性比较好,可以在上面建立taglib
      

  26.   

    我使用过一年的smarty,总体上感觉smarty提供的模板功能不错,尤其是使用到她的i18n时,多语言的页面使用同一套模板还是比较方便的。现在刚刚学习使用prado,感觉上不如smarty的地方时smarty自定义性还是很强的(大部分都自己写 ~-~),而prado有点象vc提供的mfc类库,东西老是不合自己的需求,到最后还得自己动手写,不过它的复用性比起smarty强多了,smarty要想复用个控件就比较麻烦,又是php_include,又是session穿值的,都得自己来。
      

  27.   

    各位高手,看一下这个帖,给点意见吧:
    http://community.csdn.net/Expert/topic/4338/4338855.xml?temp=.4979364
      

  28.   

    我自己写了一个。大家帮我看看
    http://www.foxbat.cn/list.asp?id=170
    http://redsoft.yculblog.com/post.921471.html
      

  29.   

    phpwind更简单,直接用heredoc输出,效率最高
      

  30.   

    模板比较小用phplib还可以,大了不怎么好smarttemplate也不错,介于phplib和smarty之间
    这个看什么项目用什么模板吧,没有必要一成不变
      

  31.   

    smarty和discuz的模板??这两个东西差别还是比较大的…………smarty我也不是很习惯用,discuz的方式我也经常用不过就不能说哪个好哪个不好吧
      

  32.   

    不知道你们为什么不用smarty的cache?用了还有快慢之分吗?
    或者做成了静态页面,完全脱离了php觉得还会有什么差别???所以别只说模版的好坏,每样东西都不可能是完美的,只有适合自己的。
      

  33.   

    jsp asp.net好像没有模板的概念。
      

  34.   

    jsp 本身就是模板
    asp.net也差不多
      

  35.   

    有意思。 继续 。 效率上我觉得 DZ的那种比较灵活,做自己的小站和要求效率并节省资源的比较好。 SMARTY 应该适合公司企业的业务。毕竟比较规范。