SMARTY模板的作用就是用html的语法完成PHP代码的功能,类似于dede模板。他的初衷是将前后台的开发分离开,
前台负责写html+css+js,但是模板中又要输出动态数据,但大多数前端人员不懂PHP ,所以就产生了这个东西。
smarty模板还提供缓存功能,提高网站的访问速度。
Smarty是PHP的"半官方"的模板化引擎,从其主页的位置就可以看出。Smarty的作者是AndreiZmievski和MonteOrte
。它是在GNU宽通用公共许可(LGPL)下发布的,可能是最流行、功能最强大的PHP模板化引擎。
Smarty还提供了很多强大的功能,本章将讨论其中一部分,概括如下。
强大的表现逻辑。Smarty提供了适当的构造,能够有条件地计算和迭代地处理数据。虽然它本身实际上是一种语言,
但语法很简单,设计人员可以很快地学会,而不需要预备的编程知识。
模板编译。为减少开销,Smarty在默认情况下将模板转换为可比较的PHP脚本,使得后续的调用速度更快。
Smarty还非常智能,在内容改变后可以重新编译。
缓存。Smarty还提供了缓存模板的可选特性。缓存与编译不同的是,支持缓存不只是能生成缓存的内容,
还能防止执行个别逻辑。例如,你可以指定缓存文档的生存时间,比如5分钟,在此期间可以忽略与该模板有关的
数据库查询。
高度可配置和可扩展。Smarty的面向对象架构允许修改和扩展其默认行为。此外,从一开始可配置性就是一个设计
目标,为用户提供了很大的灵活性,通过内置方法和属性定制Smarty的行为。
安全。Smarty提供了很多安全特性,可以避免服务器和应用程序数据遭到设计人员有意或无意的破坏。
记住,所有流行的模板化解决方案都遵循同样的一组相同的核心实现原则。与编程语言一样,学习了一种语言
就可以更容易地掌握其他语言。因此,即使不使用Smarty,你也可以继续读下去,使你对这个解决方案有一个初步
的认识,并始终强调一般性的模板化概念。
Smarty(模板引擎):
Smarty是一个使用PHP写出来的PHP模板引擎(让程序逻辑和页面代码分离)
优点:
速度快:相对其他模板引擎(以前)
编译型:采用smarty编写的程序在运行是要编译成一个非模板技术的PHP文件
缓存技术:它可以将用户最终看到的HTML文件缓存成一个静态的HTML页面
插件技术:smarty可以自定义插件
不适合Smarty使用的地方:
需要实时更新的内容(如:股票)
小项目