Heim  >  Artikel  >  Backend-Entwicklung  >  (PHP)模板引擎Smarty介绍_PHP教程

(PHP)模板引擎Smarty介绍_PHP教程

WBOY
WBOYOriginal
2016-07-13 17:32:41783Durchsuche

模板

引擎Smarty深入浅出介绍——php(做为现在的主流开发语言)

来自

: cjjer 做了部分变动

用php(做为现在的主流开发语言)实现MVC开发模式的逻辑层和表示层有多种模板引擎可供选择,但是官方引擎SMARTY诞生后,选择就有了变化。它的理念和实现都是相当前卫的。本文主要讨论SMARTY之于其他模板引擎的不同特点,简要介绍了该引擎的安装及使用,并用一个小的测试案例对比了SMARTY和php(做为现在的主流开发语言)LIBtemplate的速度和易用性。

一、MVC需要模板

MVC最早是在SmallTalk语言的开发过程中总结出的一种设计模式,MVC分别代表了模型、视图和控制,目的就是让不同的开发角色在大中型项目中各司其职。在网络应用程序的开发中,可以用下图来表示各概念之间的关系。

(PHP)模板引擎Smarty介绍_PHP教程

该图展示了一个简单的WEB应用程序,用户在浏览器上看到信息是数据库服务器上的内容,但在这之前经过了应用服务器加工。开发人员负责的就是建立数据结构、处理数据的逻辑以及表示数据的方法。

96年cgi(现在已经不多人在用了)在中国开始流行的时候,早期的WEB程序员都是从HTML开始自学成材的,在PERL中print一行行的HTML并不是一件难事,但是随着网络的一步步提速,页面大小也从当初的二、三十K暴涨了十倍。写cgi(现在已经不多人在用了)程序就产生了一个迫切的要求:分开PERL和HTML源码。于是,社会进步体现在开发小组内部的分工上。由于美工和程序员对互相的工作并不是十分熟悉,在进行合作的过程中需要用一种约定的语言进行交流。

这种语言并不是我们的母语或者英语,术语叫做模板,逻辑和表示依靠它联系。它是结合了HTML和脚本语言特征的一种表达方式。通过这种方式,表示层可以按照用户所希望的格式来显示经过逻辑层处理过的数据。如果你有Windows平台下MFC的开发经验,那么一定会很熟悉Document/DocumentTemplate/View的封装,这就是一个很典型的MVC例子。对于Web应用来说,个人认为J2EE中的EJB/servlets/jsp(SUN企业级应用的首选)是最强大的,当然还有简洁优美的Structs。另一个很有名的实现就是COM/DCOM+ASP,这个组合在我国是最多人使用的。

通过几种MVC实现在WEB应用程序里的对比,可以得到一个关于模板的概念:一组插入了HTML的脚本或者说是插入了脚本HTML,通过这种插入的内容来表示变化的数据。下面给出一个模板文件的例子,这个模板经过处理后在浏览器里显示Hello,world!

$greetings

这里暂且省略处理方式,在后面做专门对比讨论。

二、为什么选SMARTY?

对php(做为现在的主流开发语言)来说,有很多模板引擎可供选择,比如最早的php(做为现在的主流开发语言)LIBtemplate和后起之秀Fasttemplate,经过数次升级,已经相当成熟稳定。如果你对目前手中的模板引擎很满意,那么......也请往下看,相信你作为一个自由软件爱好者或者追求效率和优雅的开发者,下面的SMARTY介绍多少会有点意思。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/508676.htmlTechArticle模板 引擎Smarty深入浅出介绍——php (做为现在的主流开发语言) 来自 : cjjer 做了部分变动 用php (做为现在的主流开发语言) 实现MVC开发模式的...
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn