您的位置:

php中关于mvc的一些话题,php的mvc框架

本文目录一览:

什么是MVC?PHP

MVC由Model(模型), view(视图)和Controller(控制器)组成,PHP MVC可以更高效地管理好3个不同层的PHP代码。

Model:数据信息存取层。

View:view层负责将应用的数据以特定的方式展现在界面上。

Controller:通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

简述MVC思想与PHP如何实现MVC

简单的说就是将网站源码分类、分层。

MVC三个字母的含义:

M:Model 模型,负责数据库操作。

V:View 视图,负责调用Model调取数据,再调用模板,展示出最终效果。

C:Controller 控制器,程序的入口,决定改调用哪个View,并告诉View该做什么。

如此说来,程序的执行顺序是C-V-M 或 C-M ,和MVC的名字正好相反。

php中MVC的开发模式如何去理解?

MVC设计模式把一个软件组件区分为三个不同的部分,model,view,controller。

MVC模式是"Model-View-Controller"的缩写,中文翻译为"模式-视图-控制器"。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。MVC模式最早是smalltalk语言研究团提出的,应用于用户交互应用程序中。smalltalk语言和java语言有很多相似性,都是面向对象语言,很自然的SUN在petstore(宠物店)事例应用程序中就推荐MVC模式作为开发Web应用的架构模式。MVC模式是一种架构模式,其实需要其他模式协作完成。在J2EE模式目录中,通常采用service to worker模式实现,而service to worker模式可由集中控制器模式,派遣器模式和Page Helper模式组成。而Struts只实现了MVC的View和Controller两个部分,Model部分需要开发者自己来实现,Struts提供了抽象类Action使开发者能将Model应用于Struts框架中Model是代表组件状态和低级行为的部分,它管理着自己的状态并且处理所有对状态的操作,model自己本身并不知道使用自己的view和controller是谁,系统维护着它和view之间的关系,当model发生了改变系统还负责通知相应的view。

View代表了管理model所含有的数据的一个视觉上的呈现。一个Model可以有一个以上的View,但是Swing中却很少有这样的情况。

Controller管理着model和用户之间的交互的控制。它提供了一些方法去处理当model的状态发生了变化时的情况。

PHP MVC的疑问

关于smarty的问题楼上解释的都比较清楚了。

关于controller在MVC中发挥的作用以及它的工作流程,我想可以这么简单地去理解。

1.当你去商店购买东西时,你要对售货员发出购买请求,比如一个最简单的表单提交。这个请求通过view对应的action触发,并且提交至controller接受该请求。

2.这个时候售货员要根据你的购买请求在商店里寻找你需要的货物,这就是controller对你的请求进行逻辑分析和函数调用。

3.售货员发现你要求的货物商店没有了,只能去仓库去,仓库好比数据库。这时候也就是controller对数据库表映射出来的对象进行操作,说明我要对数据库哪个表进行操作,要操作的具体内容是什么。比如在cakephp中,我要对user表进行查询操作,那么我就要在这个对应的函数中加入$this-User-find('all'); 表示我现在对users这个表进行查询操作,返回所有值。至于为什么User就是对应users表,这个在cakephp中有命名约定,你可以去了解一下。

4.所以说,controller的操作流程应该是 用户发出请求-controller接受请求-处理请求-对M对象进行具体操作-返回操作值-返回到V层进行显示。

5.纯手工制造,有不懂的我尽量帮忙,加油^^