求救,我真的不懂MVC
想請問 php 的 mvc原理是什麼?我百思不得其解呀~?這真的好複雜!我是傳統php 寫法,就是HTML php mysql 都在同一頁,如何轉到mvc不吃力?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
想請問 php 的 mvc原理是什麼?我百思不得其解呀~?這真的好複雜!我是傳統php 寫法,就是HTML php mysql 都在同一頁,如何轉到mvc不吃力?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(12)
简单说一下MVC, 首先说一下层次定义:
其次,看图好说话。
最后,上面的大神们官话都说的很多了,我来用白话说说MVC的关系。打个比方,你现在的工作
HTML php mysql 都在同一頁
, 就好比一个家庭厨房,客人点餐(view), 你接单(Controller), 你做菜(Model), 你摆盘上菜(view)都是你一个人完成的。有错吗?对于家庭厨房来说显然没有。然后新年到了,之前平均每天就5个客人点菜,过年这天突然有100个人点菜,你懵逼了,眼看着大把大把的钱赚不到啊,累得跟粑粑一样,就做了10个客人。怎么办!你决定拼爹了,找了老爸投资100万。于是,你请了美女小花前台负责招待客人(view),你有了自动点餐系统(Controller),你请了1个打杂的负责切菜(Model1),你请了1个厨师负责油炸食品(Model2),你请了1个厨师负责面点(Model3),你清了1个厨师负责炒菜(Model4), 然后你就了一个高效的餐馆结构:这就是MVC的基本核心意义:各司其职。 粗狂的说,在成开发流程中:做前端的就负责view,做后端的就负责Controller,做数据的就负责Model。 至于如果是个人做开发该怎么办?简单:框架,框架,框架!好的框架能让你更好的理解MVC的结构,重塑开发习惯,延伸开发思维方式。
我个人对php框架的推荐:
mvc不是什么原理。是一种分类。
程序员在长期的开发中发现,程序可以分为这几个部分:控制器C负责居中调度,模型M负责数据存储,视图V负责数据展示。
就形成了 mvc
不光是PHP,在其它编程语言中,MVC也是一样的原理,即
Model、View、Controller
,用户所有的请求访问都交由Controller
负责,它调度Model(数据模型)
和View(视图)
,然后把组装好数据的View
返回给用户,这样做的好处是一套Model
可以用于不同的View
,View
与Model
不必知道对方的存在,它们不用耦合在一起。具体的可以找一些小例子研究一下。刚开始不懂很正常,你可以去看看thinkphp3.2 CI 这些容易上手的mvc框架,然后在实践中领会其中的意义
从不懂---》懂一点 ---》懂了 ---》不懂了。知道的越多,懂的越少。哈哈,好好加油。
MVC,一句话理解:高内聚,低耦合。 在来一句:单一职责.
分模块,这样各自负责自己的事情,不要和别层耦合在一起。一层改动的时候对上层影响降到最低。
过一年你就懂了!
mvc主要作用就是前后端分开,易于维护,
view写html 部分,
controller处理数据(比如密码加密 修改成数据库要存的格式)
model 做数据库操作
view请求传参多用ajax或者所用框架的调用方法, view<-contrller-> <- model 用框架的方法
mvc的思想我理解的比较low,记一下,剩下就是看手册 创建文件命名等固定格式(这就include一下,就把各部分连接在一起)传参 接受参数 没了,再看下访问路由规则就可以。
之前我也觉得不好理解。去网上找个thinkphp框架视频来看,自己再动手写一写项目就会了。
概念不理解就多实践,可以先去看一下入门学习型MVC框架“BroPHP”,不了解的地方就“var_dump”,“exit”手动打短点调试。
用框架写个项目,你就能理解了
主要还是自己要多撸代码、
做几个项目自然就会了、
光看都是虚的
HTML php mysql 都在同一页
当这一页需要修改的时候,你有感觉吃力吗
有的话试试 一些PHP框架 应该就可以理解了