thinkphp MVC问题

自己从事php也有一段时间了 但是对于thinkphp的mvc模式还是有点不太理解的地方, 网上说c只是v和m沟通的桥梁,主要的逻辑处理写在m里,可是我以前写代码都没用过m 所有逻辑都在c里处理 发现也没有什么不对的啊! 哪位大神有比较高深的见解,指点一下

阅读 3.6k
3 个回答

本身就没什么不对的地方,只是一种习惯。
我现在的代码逻辑更倾向于mscv的模式 我自己想的名字
M-是model 数据提取层
s-是service 数据装饰层 处理成view成需要的数据格式和字段需求!
c-是控制器 逻辑层
V-是视图 视图层

其实这样写,也是为了更好的代码复用 解耦 和可读性高考虑的

你不用mvc也不会不对啊,mvc架构只是便于逻辑代码的复用,提高团队开发效率.

比如你取订单的数据,需要关联订单以及订单商品表,

如果写控制器里面,你每个需要取订单数据的地方都要复制过来
如果写模型里面,只要写一个地方,其它地方引入调用模型方法就可以使用
同样的如果哪天业务逻辑改变了,写在控制器里面的方式,你需要改n个地方,
写模型里面的方式,你只需要改一个地方

主要的逻辑 应该是指的数据操作逻辑,通常会有多个模块在操作一个数据表,如果能把一些常用的数据操作方法都封装成方法,调用将更为灵活,如,可以操作缓存、可以获取状态、可以递归操作等;这样,一些特殊的逻辑都封装在了模型中,接下来就可以在任何地方(C或V中调用)!我的理解是上面的样子!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进