PHP MVC框架中modeL的作用

例如我用的THINKPHP的框架感觉MODEL层像个可有可无的东西绝大部分操作都可以直接在控制器里面完成那MODEL层到底是什么作用呢?... 例如 我用的THINKPHP的框架 感觉MODEL层 像个可有可无的东西 绝大部分操作都可以直接在控制器里面完成 那MODEL层到底是什么作用呢? 展开
 我来答
PS一点学
2015-05-21 · 知道合伙人软件行家
PS一点学
知道合伙人软件行家
采纳数:1408 获赞数:11167
毕业于广东机电职业技术学院软件技术专业.IT行业2年从业经验,主要负责建站,SEO,营销.现任凯龙网络技术主管.

向TA提问 私信TA
展开全部

MVC概念来自传统的桌面软件开发,在那样的环境下,事件发生时,Model可以主动通知View,而这在HTTP协议里是不可能的(长连接comet除外啊)。长期以来,PHP业界对MVC框架中M和C的理解和运用都是不精细的(当然,够用就好,能满足绝大多数业务了)。这导致MC分层不清,PHPer在写代码的时候没有明确的规则,到底业务逻辑放在C里还是M里,常见的问题有:

C层承担职责过多,如,赞一个答案是给对应回答者加声望,写到C里面去了

M层太单薄,就继承一下框架的Model(或者DB类),实现数据库的增删查改

非数据库操作(如调用微博OpenAPI)只好包装到Util类

用户输入($_GET,$_POST)全局乱跑,M层和Util里都有

由于大部分场景下,PHP都用来做Web应用,而且是Database Driven Application,所以,各类Database Driven的快速开发框架也应运而生,比如说,CakePHP的Model类干脆就定义了CURD几个针对数据表的操作,Qcodo直接根据数据表结构自动生成MVC三层的脚手架代码。

我理解的PHP应用是5层结构,M层应再拆分为Biz Model,DAO,Infrastructure,贴几幅图片:

HUC越前
2014-03-26 · TA获得超过263个赞
知道小有建树答主
回答量:281
采纳率:0%
帮助的人:187万
展开全部
在一些小型项目中,完全可以舍弃Model层,但是大项目中,会有分工合作的。模型负责跟DB的交互,控制器就可以用户动作提交判断、调用不同的model,最后想用户返回结果。后期维护也会非常方便。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miniappyd86d0bbza3kn
2014-03-26 · TA获得超过1330个赞
知道小有建树答主
回答量:351
采纳率:50%
帮助的人:145万
展开全部
你的D()方法 M()方法都是M层定义的东西,M相当于是数据库操作类,你看下TP三大自动跟视图模型还有关联模型就知道了
追问
那些 我都看了也用过 只不过我就感觉到那里面完全可以用控制器去写呀 只不过多写点 。。那MODEL层的意义那。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-26
展开全部
Mode层是实体
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式