PHP模板引擎SMARTY
日期:2007年4月27日 作者: 查看:[大字体 中字体 小字体]-
用PHP实现MVC开发模式的逻辑层和表示层有多种模板引擎可供选择, 但是官方引擎SMARTY诞生后,选择就有了变化。它的理念和实现都是 相当"前卫"的。本文主要讨论SMARTY之于其他模板引擎的不同特点, 简要介绍了该引擎的安装及使用,并用一个小的测试案例对比了 SMARTY和PHPLIB template的速度和易用性。
一、MVC需要模板
MVC最早是在SmallTalk语言的开发过程中总结出的一种设计模式,MVC分别代 表了"模型"、"视图"和"控制",目的就是让不同的开发角色在大中型项目中各司 其职。在网络应用程序的开发中,可以用下图来表示各概念之间的关系。
该图展示了一个简单的WEB应用程序,用户在浏览器上看到信息是数据库服务 器上的内容,但在这之前经过了应用服务器加工。开发人员负责的就是建立数 据结构、处理数据的逻辑以及表示数据的方法。
96年CGI在中国开始流行的时候,早期的WEB程序员都是从HTML开始自学成材 的,在PERL中print一行行的HTML并不是一件难事,但是随着网络的一步步提 速,页面大小也从当初的二、三十K暴涨了十倍。写CGI程序就产生了一个迫切 的要求:分开PERL和HTML源码。于是,社会进步体现在开发小组内部的分工 上。由于美工和程序员对互相的工作并不是十分熟悉,在进行合作的过程中需 要用一种约定的"语言"进行交流。
这种语言并不是我们的母语或者英语,术语叫做"模板",逻辑和表示依靠它联 系。它是结合了HTML和脚本语言特征的一种表达方式。通过这种方式,表示层 可以按照用户所希望的格式来显示经过逻辑层处理过的数据。如果你有 Windows平台下MFC的开发经验,那么一定会很熟悉Document/Document Template/View的封装,这就是一个很典型的MVC例子。对于Web应用来说,个 人认为J2EE中的EJB/servlets/JSP是最强大的,当然还有简洁优美的StrUCts。 另一个很有名的实现就是COM/DCOM+ASP,这个组合在我国是最多人使用 的。
通过几种MVC实现在WEB应用程序里的对比,可以得到一个关于模板的概念: 一组插入了HTML的脚本或者说是插入了脚本HTML,通过这种插入的内容来表 示变化的数据。下面给出一个模板文件的例子,这个模板经过处理后在浏览器 里显示"Hello, world!"
引言:
--------------------------------------------------------------------------------
<html>
<head>
<title>$greetings</title>
</head>
<body>
$greetings
<body>
</html>
--------------------------------------------------------------------------------
这里暂且省略处理方式,在后面做专门对比讨论。
二、为什么选SMARTY?
对PHP来说,有很多模板引擎可供选择,比如最早的PHPLIB template和后起之 秀Fast template,经过数次升级,已经相当成熟稳定。如果你对目前手中的模 板引擎很满意,那么......也请往下看,相信你作为一个自由软件爱好者或者追求 效率和优雅的开发者,下面的SMARTY介绍多少会有点意思。 - [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页
-
- PHP模板引擎SMARTY 相关文章:
- PHP模板引擎SMARTY 相关软件
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:PHP5正式版出炉
下一篇:PHP数据库操作面向对象的优点
精品推荐
热点TOP10
- ·JSP单页面网站文件管理器
- ·一棵php的类树(支持无限分类)
- ·一个Struts实现分页,增删改查,Tiles,国际化的DEMO
- ·一次编写,随处运行
- ·Apache2的httpd.conf翻译
- ·PHP的宝库目录--PEAR
- ·Servlet、Jsp中的多国语言显示
- ·分页显示详解(with php)
- ·搜索和替换文件或目录的一个好类--很实用
- ·使用PHP的Socket写的POP3类
- ·PHP编程与应用
- ·用IE远程创建Mysql数据库的简易程序
- ·学习教程:Java Annotation 高级应用
- ·PHP的类--功能齐全的发送邮件类
- ·VML绘图板②脚本--VMLgraph.js、XMLtool.js
- ·用Php实现链结人气统计
- ·PHP 留言簿(带Oracle数据库分页的显示功能)
- ·文件上传类
- ·PHP 中的批处理
- ·用PHP编写PDF文档生成器
