MVC在软件工程中是一种软件的架构。从php的角度来讲MVC有一些不同。
Model(模型),程序应用功能的实现,程序的逻辑的实现。在PHP中负责数据管理,数据生成。
View(视图),图形界面逻辑。在PHP中负责输出,处理如何调用模板、需要的资源文件。
Controller(控制器),负责转发请求,对请求处理。在PHP中根据请求决定调用的视图及使用的数据。
优点:
为了将代码分层、分类,将Web开发中分离开发与设计工作;
为一个模型在运行时同时建立和使用多个视图;
视图与控制器的可接插性,允许更换视图和控制器对象;
模型的可移植性;
潜在的框架结构。可以基于此模型建立应用程序框架;
缺点:
增加了系统结构和实现的复杂性;
试图与控制器联系过与紧密,影响了重用;
视图对模型数据的低效率访问,损害操作性能;
深入理解,掌握原理。