thinkphp是一个开源轻量级PHP框架,是用来简化企业级应用开发和敏捷WEB应用开发的;使用ThinkPHP,开发者可以更方便和快捷的开发和部署应用。Smarty是一个PHP模板引擎,可以更好的帮助开发者分离程序逻辑和页面显示(业务逻辑和显示逻辑分离),使程序员改变程序的逻辑内容不会影响到前端人员的页面设计,前端人员重新修改页面不会影响到程序的程序逻辑。
本教程操作环境:Windows7系统、thinkphp6&&smarty4版、Dell G3电脑。
thinkphp是什么
ThinkPHP,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的开源轻量级PHP框架。
最早诞生于2006年初,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。
ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。
ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQL、Sqlite多种数据库以及PDO扩展,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。
作为一个整体开发解决方案,ThinkPHP能够解决应用开发中的大多数需要,因为其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便。并且每个组件都是精心设计和完善的,应用开发过程仅仅需要关注您的业务逻辑。
优点:
1、易于上手,有丰富的中文文档;
2、学习成本低,社区活跃度高;
3、框架的兼容性较强,PHP4和PHP5完全兼容、完全支持UTF8等。
4、 适合用于中小项目的开发。
5、完全符合现代PHP的MVC框架理念;
6、结合了Thinkphp的数据库框架ORM,只要懂TP,用我们这个框架毫无违和感。
缺点:
1、对Ajax的支持不是很好;
2、目录结构混乱,需要花时间整理;
3、上手容易,但是深入学习较难。
smarty是什么
Smarty是一个使用PHP写出来的模板引擎,是业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。
Smarty可以更好的帮助开发者分离程序逻辑和页面显示,如在前后端分离的项目中,前后端为不同开发人员,那么Smarty便可以做到在互相不影响的情况下完美的实现前后台的协作。并且业务逻辑和显示逻辑分离,是Smarty的一个设计理念。
简单的讲,目的就是要使PHP程序员同前端人员分离,使程序员改变程序的逻辑内容不会影响到前端人员的页面设计,前端人员重新修改页面不会影响到程序的程序逻辑,这在多人合作的项目中显的尤为重要。
Smart的一些特性
-
非常快速。
-
比PHP内嵌到HTML中的做法要有效率的多。
-
比PHP内嵌到HTML中的做法要有效率的多。
-
无模板解析的开销,只编译一次。
-
仅当模板文件被修改后才会聪明地重新编译。
-
你可以很容易创建自己的函数和变量修饰器,非常具有可扩展性。
-
可配置的模板定界符语法{delimiter}, 你可以使用{$foo}, {{$foo}}, <!–{$foo}–>等等。
-
条件判断语句 {if}..{elseif}..{else}..{/if} 会直接使用PHP解析,所以{if…}后可以是简单或者较复杂的表达式。
-
支持无限的 sections, if等的嵌套。
-
内置缓存支持。
-
任意的模板源。
-
模板继承 可以轻松管理模板和内容。
【相关教程推荐:thinkphp框架】