|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
建议大家买一本书,而不光是在网上看一些零碎的资料,一本书毕竟会讲的系统一些,全面一些,而且印刷的书不受电脑的限制,但是建议在看书的时候最好旁边有电脑,这样可以很及时地上机实践。开辟指南 了解 FleaPHP 中,MVC 形式是若何完成的,和其特色,可以匡助你更好的应用 FleaPHP。
甚么叫做设计形式?
复杂来讲,设计形式(Pattern)就是处理某一类成绩的特定办法。因为这类特定办法在处理同类成绩时具有通用性,所以咱们就能够一次又一次的使用已有的经历。详细到法式编写上,就是咱们可以用相似的法式布局和代码处理同类型的成绩。有关设计形式的具体内容,可以浏览经典著作《设计形式》,这里我就不布鼓雷门了。
MVC 实践上是一系列略有分歧的形式。FleaPHP 采取的是Passive(主动)MVC 形式。
在 Passive MVC 形式中,Model(模子)完整不晓得本人身处于 MVC 布局当中。换句话说,Model 就是一个通俗的对象,与 MVC 形式外面的其他构成局部完整没有联系关系。详细而言,MVC 形式触及到以下三类对象:
- M 代表 Model,即模子,用于封装与营业逻辑有关的代码和数据。例如对定单的各类盘算。
- V 代表 View,即视图,用于出现内容给用户(也就是将法式运转的了局前往给阅读器显示)。例如商品列表页面、后台登录页面。
- C 代表 Controller,即掌握器,用于吸收用户输出(经由过程阅读器倡议的恳求),然后挪用模子(Model)对输出数据停止处置并取得处置了局。最初将了局传递到视图(View),从而让用户可以看到本人操作的了局。例如用户点击删除文章按钮后,掌握器挪用操作文章的模子,删除失落指定文章,最初经由过程视图显示胜利删除文章的提醒信息。
经由如许复杂的分别,咱们就把使用法式操作数据的代码(绝大局部 Web 使用法式都是对数据停止操作)和处置用户输出输入的代码分别开来了。
这类分别有很多优点:
- 明晰的将使用法式分隔为自力的局部;
- 营业逻辑代码可以很便利的在多处反复利用;
- 便利开辟人员分工协作;
- 假如需求,可以便利开辟人员对使用法式各个局部的代码停止测试。
假如你下面的文字让你感觉很无聊或不敷严谨,那末申明你已很熟习 MVC 形式了。假如你看到下面的文字感应莫衷一是,那申明你还需求多浏览一些面向对象相干的书本和文档。
使用法式履行流程
上面的插图描写了基于 FleaPHP 使用法式的履行流程。
- index.php 是使用法式的进口文件,担任界说一些使用法式必需的常量,并载入 FleaPHP 框架,然后履行 run() 函数;
- 过滤器链完成 HTTP 恳求数据解析、MagicQuotes 处置等任务;
- 使用法式掌握依据 HTTP 恳求,挪用范畴逻辑、表数据进口、组件等,并将处置了局传送到视图/模板;
- 视图/模板依据使用法式掌握器供应的数据生成输入内容并传送到阅读器。
在 FleaPHP 中,index.php 外面的 run() 在挪用过滤器链后,会运转一个调剂器。该调剂器依据 HTTP 恳求参数决意要挪用的使用法式掌握器。例如 index.php?controller=blog&action=list 这个恳求暗示要挪用名为 blog 的使用法式掌握器的 list 举措。然后调剂器会挪用这个掌握器的举措。
在 FleaPHP 使用法式中,掌握器完成为一个类,掌握器举措就是该类的一个办法。
在掌握器(MVC 形式中的 Controller)办法中,经由过程挪用范畴逻辑代码(MVC 形式中的 Model)来处置 HTTP 恳求提交的数据并取得了局。然后再将了局传递给视图(MVC 形式中的 View)。视图依据掌握器办法供应的参数从模板文件机关终究的页面内容,并前往给阅读器。
应该大致熟悉了一些学习过程,也许我的过程和你的有些出路,但是不管怎么样是殊途同归,我写这么多,也只是给大家一个借鉴的机会,至于好与不好,默默不敢打包票^0^ |
|