MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应
用程序的模式。它允许我们建立一个三层结构的应用程序。这种开发模式允许将网页或其他
显示内容从内部应用程序代码中分离出来,让设计者和程序员更容易地集中于他们各自的专
业领域。从而帮助设计师和开发者协同工作以及提高我们维护和扩展既有程序的能力。

MVC 三层之间的关系

MVC原理 - 图1

MVC内容

MVC是一种使用MVC(Model View Controller模型-视图-控制器)设计创建Web应用程序的模式:

  • Model(模型):表示应用程序核心用于处理应用程序数据逻辑的部分。(比如数据库记录列表)
  • View(视图)处理数据显示的部分。(依据模型数据创建的)
  • Controller(控制器)处理用户交互的部分。(读取数据发送到视图,控制输入数据写入数据库记录)
  • MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。
  • MVC 分层同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

MVC的不足
增加了系统结构和实现的复杂性。对于简单的界面,严格遵循 MVC,使模型、视图 与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。
视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但确实联系紧密的 部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了他们的独立重用。
视图对模型数据的低效率访问。依据模型操作接口的不同,视图可能需要多次调用才能获得足够的显示数据。对未变化数据的不必要的频繁访问,也将损害操作性能。

常见PHP框架

ThinkPHP:中国人开发的,我们要学习的一款框架!

MVC原理 - 图2
ThinkPHP是一个性能卓越并且功能丰富的轻量级 PHP 开发框架, 本身具有很多的原创特性,并且倡导大道至简,开发由我的开发理念,用最少的代码完成更多的功能,宗旨就是让WEB应用开发更简单、更快速。

CodeIgniter:简单易用,以性能和速度闻名。

MVC原理 - 图3
CodeIgniter是一个简单快速的 PHP MVC框架。EllisLab的工作人员发布了 CodeIgniter。
许多企业尝试体验过所有 PHP MVC 框架之后,CodeIgniter都成为赢家,主要是由于它为组织提供了足够的自由支持,允许开发人员更迅速地工作。

YII : 简单易用,以性能和速度闻名。

MVC原理 - 图4
将 Web编程中的可重用性发挥到极致,能够显著加速开发进程。读作“易”,代表简
单“esay”、高效“efficient”、可扩展“extensible”。

Laravel:巨匠级PHP开发框架,世界排名第一名。

MVC原理 - 图5
Laravel是一套简洁、优雅的PHP Web开发框架(PHP Web Framework)。它可以让你从面条一样杂乱的代码中解脱出来;它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁、富于表达力。