深入浅出PHP框架Thinkphp实战开发:thinkphp基础+项目实战11
thinkphpv6.0 框架结构

7-23-5-thinkphpv6.0 框架结构ThinkPHP 是一个流行的 PHP 框架,而 ThinkPHP 6.0 是其第六个主要版本,引入了许多改进和新功能。
以下是 ThinkPHP 6.0 框架的主要结构和组件:1. 应用目录(application):• controller:存放控制器类,处理请求和业务逻辑。
• model:模型层,用于处理数据操作和数据库交互。
• view:视图层,存放视图文件,用于呈现数据给用户。
2. 公共目录(public):• index.php:应用的入口文件,处理所有的请求。
• static:静态资源文件,如样式表、JavaScript 文件等。
3. 配置目录(config):• config.php:应用的配置文件,包含数据库连接、路由规则、应用设置等配置项。
• database.php:数据库配置文件,定义数据库连接信息。
• route.php:路由配置文件,定义 URL 路由规则。
•其他自定义的配置文件。
4. 扩展目录(extend):•存放自定义扩展或第三方库,如自定义的类、库和插件等。
5. 系统目录(thinkphp):• ThinkPHP 6.0 核心框架文件,通常不需要手动修改。
•包括核心库、组件和一些系统级配置文件。
6. 运行时目录(runtime):•包括缓存文件、日志文件、模板编译文件等。
•应用在运行时生成的临时文件存放在这里。
7. 路由目录(route):•存放路由定义文件,用于自定义 URL 路由规则。
8. 模板目录(template):•存放视图文件,用于展示数据给用户。
通常包含 HTML 模板文件。
•模板可以按照控制器或功能进行组织。
9. 语言目录(lang):•存放应用的多语言文件,用于国际化和本地化。
•不同语言版本的字符串文本可以存储在不同的子目录中。
10. 日志目录(log):•存放应用生成的日志文件,用于调试和错误跟踪。
Thinkphp开发手册(完整版)

TP开发手册完整版:系统特性ThinkP HP是一个性能卓越并且功能丰富的轻量级PHP开发框架,本身具有很多的原创特性,并且倡导大道至简,开发由我的开发理念,用最少的代码完成更多的功能,宗旨就是让WEB应用开发更简单、更快速。
从1.*版本开始就放弃了对PHP4的兼容,因此整个框架的架构和实现能够得以更加灵活和简单。
2.0版本更是在之前的基础上,经过全新的重构和无数次的完善以及改进,达到了一个新的阶段,足以达到企业级和门户级的开发标准。
ThinkP HP值得推荐的特性包括:✧类库导入:ThinkP HP是首先采用基于类库包和命名空间的方式导入类库,让类库导入看起来更加简单清晰,而且还支持冲突检测和别名导入。
为了方便项目的跨平台移植,系统还可以严格检查加载文件的大小写。
✧URL模式:系统支持普通模式、PATHIN FO模式、REWRIT E模式和兼容模式的URL方式,支持不同的服务器和运行模式的部署,配合URL路由功能,让你随心所欲的构建需要的URL地址和进行SEO优化工作。
✧编译机制:独创的核心编译和项目的动态编译机制,有效减少OOP开发中文件加载的性能开销。
ALLINO NE模式更是让你体验飞一般的感觉。
✧ORM:简洁轻巧的ORM实现,配合简单的CURD以及AR模式,让开发效率无处不在。
✧查询语言:内建丰富的查询机制,包括组合查询、复合查询、区间查询、统计查询、定位查询、动态查询和原生查询,让你的数据查询简洁高效。
✧动态模型:无需创建任何对应的模型类,轻松完成CURD操作,支持多种模型之间的动态切换,让你领略数据操作的无比畅快和最佳体验。
✧高级模型:可以轻松支持序列化字段、文本字段、只读字段、延迟写入、乐观锁、数据分表等高级特性。
think_php面试题及答案(3篇)

第1篇一、基础题1. Think PHP 的全称是什么?它有什么特点?- 答案:Think PHP 的全称是 ThinkPHP,它是一款免费开源的PHP框架。
其特点包括易用性、快速开发、高性能、安全性、可扩展性等。
2. 简述 Think PHP 的 MVC 架构。
- 答案:Think PHP 采用 MVC 架构,即模型(Model)、视图(View)、控制器(Controller)。
模型负责数据操作,视图负责展示,控制器负责处理请求和响应。
3. 什么是路由?在 Think PHP 中如何配置路由?- 答案:路由是将用户请求映射到控制器的方法。
在 Think PHP 中,可以通过配置 `route` 文件或使用 `Route::rule()` 方法来定义路由。
4. 什么是中间件?在 Think PHP 中如何使用中间件?- 答案:中间件是一种拦截器,用于在请求处理过程中执行特定的操作。
在Think PHP 中,可以通过注册中间件来使用它,例如 `App\ Middlewares\ CheckLogin`。
5. 简述 Think PHP 的自动加载机制。
- 答案:Think PHP 使用 PSR-4 标准的命名空间自动加载规范,通过`composer` 自动加载类库,同时支持类名缩写和自动加载插件。
二、进阶题6. 在 Think PHP 中,如何实现数据库操作?- 答案:在 Think PHP 中,可以通过 `Db` 类实现数据库操作。
例如,使用`Db::table('table_name')` 方法查询数据,使用 `Db::execute()` 方法执行SQL 语句。
7. 如何实现分页查询?- 答案:Think PHP 提供了 `paginate` 方法实现分页查询。
例如,`$data = Db::table('table_name')->paginate(10)`。
thinkphp 开发手册

thinkphp 开发手册ThinkPHP 是一款基于PHP的开发框架,是广大 PHP 开发者的首选工具之一。
本文将为您介绍ThinkPHP的基本概念、常用功能模块以及开发技巧,以帮助您快速上手并高效开发。
一、ThinkPHP 简介ThinkPHP 是一套开源的、高效的、面向对象的 PHP 开发框架,基于 MVC 设计模式,提供了诸多的快捷操作和丰富的扩展功能。
它具有简单易学、灵活高效的特点,适用于各种规模的Web应用开发。
ThinkPHP 的特点有:1. MVC 设计模式:将应用程序划分为模型(Model)、视图(View)和控制器(Controller)三个层次,实现了逻辑层和表现层的分离,提高了代码的可维护性和复用性。
2. ORM支持:通过对象关系映射(ORM),简化了对数据库的操作,使用起来更加方便快捷。
3. RESTful支持:支持 RESTful 风格的 URL 设计,方便构建RESTful API 接口。
4. 全面的扩展支持:ThinkPHP 提供了丰富的插件机制,可以很方便地扩展框架的功能。
5. 强大的缓存支持:支持各种缓存方式,如文件、Memcache、Redis等,提高了系统的性能和响应速度。
二、ThinkPHP 开发流程1. 安装配置首先,您需要下载最新的 ThinkPHP 安装包,并解压到服务器目录下。
接下来,配置数据库信息和URL访问规则,确保框架可以正常运行。
2. 路由配置ThinkPHP提供了丰富的路由配置选项,通过设置URL规则,实现URL的重写和分发。
路由配置可以增加应用的安全性,同时对于SEO也非常友好。
3. 创建控制器在ThinkPHP中,控制器负责处理用户的请求,并进行相应的数据处理。
您可以根据业务需求,创建新的控制器,并在其中编写相应的业务逻辑。
4. 定义模型模型是表示数据的关键,ThinkPHP提供了强大的数据操作工具,可以让您更加便捷地操作数据库。
通过定义模型文件,您可以通过简单的代码实现对数据表的增删改查等操作。
PHP网站开发实战项目式教程 任务10 ThinkPHP框架技术在购物系统中的应用

应用
PHP网站开发技术
学习目标
【知识目标】 ThinkPHP程序设计 ThinkPHP配置 ThinkPHP控制器 ThinkPHP模型 ThinkPHP视图 ThinkPHP模板
【技能目标】 能熟练掌握ThinkPHP程序设计的方法 熟练掌握ThinkPHP框架的基本使用 能利用Thinkphp框架实现商品管理模块等简单功能的开发
知识准备
URL生成
ThinkPHP框架提供了U方法,用于URL的动态生成,可 以确保项目在移植过程中不受环境的影响。语法格式如下:
知识准备
跳转和重定向
1、页面跳转
在应用开发中,经常会遇到一些带有提示信息的跳转页面,系统 的\Think\Controller类内置了两个跳转方法success()和 error(),用于页面跳转提示。
success()方法用于在判断操作成功时的跳转,格式如下:
error()方法用于在判断操作失败时的跳转,格式如下:
知识准备
跳转和重定向
2、重定向 Controller类的redirect方法可以实现页面的重定向功能。例如
在我们进行登录操作时,登录信息验证不正确,我们就会使用 重定向让用户重新访问登录页。
1、在控制器中编写生成验证码方法 在控制器中加入生成验证码的自定义方法,下面是最简单的方
式生成验证码:
知识准备
2、显示验证码的页面
3、验证码检测
可以用Think\Verify类的check方法检测验证码的输入是否正确,例如, 下面是封装的一个验证码检测的函数:
子任务二:系统管理员登录
redirect()方法的参数用法和U函数的用法一致。例如:
thinkphp框架流程原理

thinkphp框架流程原理ThinkPHP框架流程原理ThinkPHP是一款基于PHP语言的开源框架,广泛应用于Web应用程序的开发中。
它采用了MVC(Model-View-Controller)的设计模式,通过合理的分层结构和丰富的功能组件,提供了一种高效、灵活且易于维护的开发方式。
下面将介绍ThinkPHP框架的流程原理。
1. 请求处理流程当用户发起请求时,请求首先会被服务器接收并交给ThinkPHP框架的入口文件index.php处理。
入口文件会加载框架的核心文件,并进行一系列初始化操作,包括加载配置文件、注册自动加载函数等。
接着,框架会解析URL,确定当前请求的控制器和方法。
控制器是负责处理具体业务逻辑的部分,方法则是控制器中的具体处理逻辑。
框架会根据URL解析结果,实例化对应的控制器,并调用相应的方法。
在方法执行前,框架会先执行一系列钩子函数,如beforeAction、__call等,用于处理一些公共逻辑或权限验证等。
然后,框架会调用控制器方法并传入相应的参数,执行具体的业务逻辑。
方法执行完成后,框架会根据返回的结果,选择相应的视图模板进行渲染。
视图模板负责将数据展示给用户,并生成最终的HTML页面。
框架会将渲染好的HTML页面发送给浏览器,完成一次请求响应过程。
2. 数据库操作流程在ThinkPHP框架中,数据库操作是非常常见的。
框架提供了丰富的数据库操作方法,使开发者可以方便地进行数据库的增删改查等操作。
在进行数据库操作之前,需要先配置数据库连接信息,包括数据库类型、主机地址、数据库名、用户名、密码等。
配置信息存放在框架的配置文件中,通过配置文件的加载和解析,框架能够获取到数据库连接所需的信息。
在具体的业务逻辑中,开发者可以使用框架提供的数据库操作方法,如查询方法find、插入方法insert、更新方法update等。
这些方法会根据开发者提供的参数,生成相应的SQL语句,并与数据库进行交互。
thinkphp 开发手册

thinkphp 开发手册ThinkPHP是一个开源的PHP框架,被广泛应用于Web应用的开发中。
它提供了一套丰富的功能和灵活的架构,使得开发人员能够更高效地构建和维护现代化的应用程序。
本文将介绍ThinkPHP的开发手册,包括框架的概述、安装配置、基本用法、高级特性等内容。
一、概述ThinkPHP是中国首个开源的PHP企业级开发框架,由中国最大的PHP开源社区——PHPHub团队开发和维护。
它是基于MVC模式设计的,具有良好的扩展性和高性能。
ThinkPHP采用了简洁的代码风格和规范,使得团队协作更加高效。
二、安装配置1.下载你可以从ThinkPHP的官方网站下载最新版的框架,也可以使用Composer来安装。
在下载之前,建议先阅读官方的文档,了解最新的版本特性和要求。
下载后,将框架解压到你的Web服务器目录下。
2.配置在框架的根目录中,有一个名为think的PHP文件,它是整个框架的入口文件。
你需要将Web服务器的文档根目录指向这个文件。
接下来,你需要在应用目录下创建一个名为config的目录,并在其中创建一个名为config.php的文件。
这个文件是框架的配置文件,你可以在其中设置数据库连接、路由规则等。
三、基本用法1.路由ThinkPHP的路由系统非常灵活,可以通过配置文件或者注解的方式进行定义。
你可以将URL映射到指定的控制器和方法,也可以将URL 参数传递给对应的方法。
路由系统支持正则表达式,可以满足你各种复杂的路由需求。
2.控制器在ThinkPHP中,控制器负责处理来自用户的请求,并返回响应结果。
你可以在应用目录下的controller目录中创建控制器文件,并定义各种方法。
控制器的方法可以通过URL来访问,也可以通过控制器的内部调用来使用。
控制器还可以接收用户传递的参数,并进行相应的处理。
3.模型模型是数据处理的关键,它负责与数据库进行交互,执行各种数据库操作。
在ThinkPHP中,你可以通过继承一个基类模型来创建自己的模型类,然后在控制器中使用它。
ThinkPHP3.2.3快速入门:基础篇

ThinkPHP3.2.3快速⼊门:基础篇⼀、安装thinkphp⽆需安装,只需将从官⽹上下载的压缩包解压后,把所有⽂件放到localhost根⽬录⾥就⾏了⼆、压缩包中⽂件简述:应⽤程序⽂件夹。
⾃⼰所写的⽂件都放在这个⽂件夹⾥⾯:公⽤⽂件夹。
程序所需的js、css、图⽚等⽂件放在此⽂件夹中:tp框架的核⼼⽂件。
:程序的⼊⼝⽂件。
⼊⼝⽂件中需要注意的是这⼀⾏⽤来开启或关闭调试模式,博主建议开发阶段开启部署阶段注释或者设为false,这样做会使程序加载⽂件少,运⾏快开启调试模式后,点击页⾯右下⾓调试模式图标,如右图:点击调试模式图标后会出现调试界⾯,程序员可以从中获得程序的有效信息⽤来调试程序。
但是开启调试模式后,加载的⽂件较多,会增⼤内存开销,增加运⾏时间,拖慢运⾏效率。
ThinkPHP⽂件下的⽂件::⽤来存放各种⽅法:配置⽂件夹。
此⽂件夹下的为整个thinkPHP的配置⽂件(常⽤):语⾔包:核⼼类。
此⽂件夹下存放了thinkPHP的各种类⽂件:没什么⽤: thinkphp的模板⽂件夹,没什么⽤:thinkphp的⼀个类⽂件三、访问⼊⼝⽂件在浏览器中访问 index.php ,出现如下页⾯即表⽰访问成功:⼀开始的Application⽂件夹⼏乎是空的,这时我们需要访问⼊⼝⽂件即访问index.php,使其⽣成必需⽂件这⼏个⽂件夹中::⽤来存放⽅法和配置⽂件:这⾥⾯是程序运⾏时产⽣的⽂件:模块⽂件夹。
⼤家可以通过修改其中的⽂件或创建新模块来创建⾃⼰的程序这其中的 Model 、View、Controller 三个⽂件夹代表 MVC模式:M层,调⽤数据库数据。
:V层,视图层:C层,逻辑层。
控制器⽂件夹,其⽂件夹下⽤来存放控制器类⽂件(注:其命名规则为驼峰法如:IndexController.class.php)url中最终访问的就是此⽂件夹下的相应控制器类⽂件下的⽅法。
如下图所⽰:1.先在IndexController.class.php建⼀个test⽅法2.在URL中访问此⽅法3.此时页⾯就会调⽤ test ⽅法四、控制器访问及路由解析tp框架url地址可以由以下四种(注:MVC模式最终访问的是⽅法,不是页⾯)http://⽹址/index.php?m=XX&c=XX&a=XX 基本get模式http://⽹址/index.php/模块/控制器/操作⽅法路径模式pathinfohttp://⽹址/模块/控制器/操作⽅法 rewrite重写模式http://⽹址/index.php?s=/模块/控制器/⽅法兼容模式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Zend Framework 优点: 1. 官方出品,自带了非常多的 library,框架本身使用了很多设计模式来编写,架构上很优雅,执行效 率中等;MVC设计中,比较简洁,具有路由功能,配置文件比较强大(能够处理XML和php INI), 各种 library 很强大,是所有PHP框架中各种功能最全面的,包括它不仅是一个PHP框架,更是一个大 类库(取代PEAR),这是它的主要特色;能够直观的支持除数据库操作之外的Model层(比 CodeIgniter 和 CakePHP 强),并且能够很轻易的使用Loader功能加载其他新增加的Class;Cache功能 很强大,从前端Cache到后端Cache都支持,后端Cache支持Memcache、APC、SQLite、文件等等方式 ;数据库操作功能很强大,支持各种驱动(适配器) 2. 文档很全,在国内社区很成熟,并且目前不少Web 2.0网站在使用,学习成本中等 缺点: 1. MVC功能完成比较弱,View层简单实现(跟没实现一样),无法很强大的控制前端页面 2. 没有自动化脚本,创建一个应用,包括入口文件,全部必须自己手工构建,入门成本高 3. Zend Framework 作为一个中型应用框架问题不大,也能够勉强作为大型应用的PHP框架,但是作 为一个很成熟的大型PHP框架来说,还需要一些努力 评价: 作为官方出品的框架,Zend Framework的野心是可以预见的,想把其他框架挤走,同时封装 很多强大的类库,能够提供一站式的框架服务,并且他们的开发团队很强大,完全足够有能力开发 很强大的产品出来,所以基本可以确定的是Zend Framework前途无量,如果花费更多的时间去完善框 架。同样的,Zend Framework架构本身也是比较优雅的,说明Zend官方是有很多高手的,设计理念 上比较先进,虽然有一些功能实现的不够完善,比如View层,自动化脚本等等,这些都有赖于未来 的升级。
FleaPHP框架的核心非常小,但通过灵活的配置,可以组合出各种类型的基础架构。对于简 单的脚本页面,FleaPHP不需要载入MVC模式,只需 要为应用程序提供业务逻辑和数据库服务。而 对于复杂的应用程序,FleaPHP可以完成从MVC模式调用、访问控制、数据验证到文件上传、图片 处理等各种 各样的任务。正是因为这种出色的定制和扩展能力,FleaPHP真正接近了“满足从简单 应用到企业开发的各种需求”这个目标。而且与许多其他框架不 同,FleaPHP是一个完全在实际开 发中精炼出来的框架。 FleaPHP作为一个完全国产的框架,具有完全中文化的文档、代码注释,并且在扩展功能上 也注重考虑国内开发者的实际需求。因此相对于国外的各种框架,FleaPHP更容易被国内开发者所 接受。 总结: ThinkPHP框架是国内比较优秀的框架,功能强大,学习起来容易。其灵活设计秉承简单的理念,如 果太注重效率就使用FleaPHP
2. 3.
4.
5.
强大的缓存机制(apc,db,memcache,shmop,xcache及file文件缓存等)
良好的加载第三方类库的功能,方便功能的扩展(复用性非常强)
1. Thinkphp简介
M 数据表示模型类 V 模板 C 管理类调用并管理 模型类和模板 如: http://127.0.0.1/index.php?m=user&a=reg 1) m代表模块(控制器),a代表action动作 (控制器里的方法) 2) index.php 称为主入口文件 (通常为单点接入方式)
Symfony 优点 1. Symfony 是PHP框架中功能较强大的;它完整实现了MVC三层,能够满足一个项目下多个 应用的需要,并且每层可以定义自己的类库,配置文件,layout;非常强大的命令行操作功 能,包括建立项目、建立应用、建立模块、刷新缓存等等; 2. Symfony绝对是开发大型复杂项目的首选,因为使用了Symfony,将大大节约开发成本,并 且多人协作的时候,不会出现问题,在Project级别定义好基础Class以后,任何模块都能够重 用,大大复用代码 缺点: 1. 数据库操作model采用了重量级的propel和creole,不过在我测试的版本中已经把他们移到 了addon里,可用可不用 2. 缓存功能无法控制,每次开发调试总是缓存,需要执行 symfony cc, symfony rc 来清除和重 建缓存; 3. 效率不是很高,特别是解析模板和读取配置文件的过程,花费时间不少; 4. 学习成本很高,并且国内没有成熟的社区和文档,连中文手册都没有,相应的要掌握所有 功能,需要花费比较多的时间 评价: Symfony绝对是企业级的PHP框架,唯一能够貌似能够跟Java领域哪些强悍框架抗衡的 东西;强悍的东西,自然学习复杂,但是相应的对项目开发也比较有帮助,自然是推荐复杂 的项目使用Symfony来处理,觉得是值得,后期的维护成本比较低,复用性很强。
ThinkPHP
ThinkPHP视频教程:深入浅出PHP框架Thinkphp实战开发: /goods-321.html
1. Thinkphp简介
ThinkPHP的特点 1. 良好的跨平台特性: 1) 操作系统平台(windows,linux,unix 等) 2) 服务器平台 (apache,iis,ngix等) URL上支持多种模式(4种),方便SEO pathinfo /xx/xx/xx/ 自动加载,动态编辑,节约系统效率(自动编译—编译缓存)
评价:
总体来说,拿CodeIgniter来完成简单快速的应用还是值得,同时能够构造一定程度 的layout,便于模板的复用,数据操作层来说封装的不错,并且CodeIgniter没有使用很多 太复杂的设计模式,执行性能和代码可读性上都不错。至于附加的 library 也还不错,简 洁高效。
CakePHP 优点: 1. CakePHP是最类似于RoR的PHP框架,包括设计方式,数据库操作的Active Record方式;设计层面 很优雅,没有自带多余的 library,所有的功能都是纯粹的框架,执行效率还不错;数据库层的 hasOne, hasMany 功能很强大,对于复杂业务处理比较合适;路由功能,配置功能还不错;自动构建 脚手架(scaffold)很强大;适合中型应用;基本实现过了MVC每一层;具有自动操作命令行脚本功 能; 2. 文档比较全,在国内推广的比较成功,大部分都知道CakePHP,学习成本中等 缺点: 1. CakePHP非常严重的问题是把Model理解为数据库层操作,严重影响了除了数据库之外的操作能力 2. CakePHP的cache功能略显薄弱,配置功能稍嫌弱;CakePHP不适合大型应用,只适合中型应用, 小型应用来说学习成本高了些 评价: 总体来说CakePHP框架代表了PHP框架很重要的一个时代和代表,并且目前发挥着很重要的 作用,不少自己写的框架都模仿了CakePHP的方式,是个里程碑式的产品;CakePHP透露着RoR的 敏捷开发方式和把数据库操作认为是唯一Model的设计思想,作为开发快速应用和原型是绝好的工 具;同样,用来做Web2.0网站的开发框架,也是值得选择的。
学习目标
MVC简介
MVC是一种软件设计典范能被用于组织代码用一种业务逻辑和数据显 示分离的方法。这个方法的假设前提是如果业务逻辑被聚集到一个部件里 面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编 写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在 一个逻辑的图形化用户界面的结构中。 MVC(Model View Controller)模型(model)-视图(view)-控制器 (controller)。MVC本来是存在于Desktop程序中的,M是指数据模型,V是指 用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而 使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱 状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应 该同步更新。
2. Thinkphp版本和目录结构
官方地址: A:alpha 内部测试版 B:beta 公开测试版 C (RC):开发倒计时版(即将正式版发布之前的版本) F:正式版 (讲解以2.0正式完整版为例) 建议下载 “带有扩展、示例和文档的完整包” 注:完整包中的ThinkPHP文件夹为框架库文件,该只要包含了该文件夹 中ThinkPHP.php文件,就可以使用ThinkPHP框架的各种功能了 (thinkphp的目录结构分为: 库目录结构 + 项目目录结构)
模型-视图-控制器(MVC)是Xerox PARC在八十年代为编程语言 Smalltalk-80发明的一种软件设计模式,至今已被广泛使用。最近几年被推 荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用 ColdFusion 和 PHP 的开发者的欢迎。模型-视图-控制器模式是一个有用的 工具箱,它有很多好处,但也有一些缺点(小项目不必用mvc 是实现)。
分离好处: 1)利于大型项目,方便后期业务逻辑的扩展 2) 利于项目组成员,各个成员的分工合作 facebook -- 哈佛大学的校园网 -- 一个星期
MVC简介
MVC的响应请求结构,如下图所示:
国内主流PHP mvc框架
ThinkPHP
ThinkPHP快速、借用了成熟的Java思想,但是实际使用过程中 有些基本的CURD的关联操作存在错误。ThinkPHP基于PHP5,充 分利用了PHP5的特性。如:ThinkPHP的数据验证和自动填充,但 是这个也束缚了ThinkPHP导致不考虑添加自动统计字段等小功能. ThinkPHP还有一个特性是从自动生成数据,但是这个却不支 持关联。ThinkPHP有着十分优秀的特性和思想,却有着较一般的应 用实践体验。 ThinkPHP的文档号称最丰富,事实也是这样,但是 ThinkPHP的文档和示例却又太泛泛,比如表关联只介绍了其在 model里面的定义,其他的CURD操作都没有提及。
国内主流PHP mvc框架
FleaPHP