Smarty之惑

On 2010/09/16, in WEB开发, by lyndon

Smarty,大名鼎鼎,无需多说,所有介绍Smarty的文章都会提到一点“分离php和html代码”,并将之作为Smarty最大的作用介绍。看上去它真的做到了,Smarty制作的模板里可以没有一句php的语法。但仅仅是这样就能解放程序员和美工吗?
Smarty的模板里仍然充斥着各种各样的if之类的语法,只是他们变了样子,不再以php语法的形式存在而已。对美工来说它们依然是雷区,踩到就完蛋,于是文件又在美工和程序员间来回修改。这难道不和没有用Smarty前一样吗?既然如此,Smarty的意义何在?
Smarty的模板第一次访问时会讲里面的Smarty语句编译php语句,然后缓存起来以便下次使用。既然还是要回到php,为何不一开始就用php制作模板?何必非要编译一遍?还得学习Smarty的用法及语法。何必呢,何苦呢。
用Smarty可能只是让模板在一些编辑器(比如DW)中看上去好看一些,那些原来表示php语句的黄色小块被文字替代,这样美工看上去方便一些。
或许css+div比Smarty更好用。

Tagged with: