作者rexmouse4v (环岛失败.....囧)
看板PHP
标题Re: [请益] 请问PHP的MVC架构的问题
时间Wed Aug 13 07:10:33 2014
※ 引述《cat99961 (阿汤)》之铭言:
: 因为发现有的公司在实作PHP似乎是用MVC架构的,於是上网查了一下MVC架构。
: 我归纳出
: Model-PHP程式设计师利用物件导向的方式撰写一些模组供使用
: VIEW-介面设计人员进行图形介面设计,和PHP程式设计师无关。
MVC的定义去看WIKI就好
其实WIKI的解释满详细的
: 以下是我的疑问
: 1.请问以上这2点归纳的正确吗?
: 2.Model一定用OO的方式写吗?
在正常的 MVC 的世界里...应该全部都是OO
: 3.VIEW真的和PHP程式设计师无关吗?
不可能....因为你也会需要有判断的情境
也可能需要跑回圈的情境
if & for(each) 应该会很常出现
但是绝对不会在 VIEW 上面看到商业逻辑
: 4.至於Controller我不太了解它是什麽,和"PHP程式设计师"有关吗?
: 5. MVC 和 framework 一直常被一起提,framework 是否只是协助制作MVC架构的软体?
: 6.不用framework 也可实作MVC吗?用framework实作MVC真的会比较容易吗?
: 希望各位高手可以帮我解答这些观念上的问题,小妹感激不尽.....
不要执着在字面上的用意
MVC 只是一个概念
CONTROLLER 控制资料
MODEL 封装资料
VIEW 画资料
就这样
FRAMEWORK 只是一个工具
用来帮助你快速开发的工具
所以 MVC FRAMEWORK,他只是辅助你写出 MVC 基本概念而已
剩下的要靠你的程式架构与规划去做
不用 FRAMEWORK 也可以做出 MVC
通常 MVC 的 URL 长这样
http://localhost/index.php?r=job/view&aaa=1
index.php 是主要控制点
由他来分配要去哪一个 CONTROLLER
job 就是那个 CONTROLLER
但 job 下可能不只做一件事
可能下面还有 ajax, list
所以需要 /view 告诉 CONTROLLER 说
进到 job 後要去 view 的 function 画画面
而 aaa 就是 view 拿到的参数
你可以先从做简单的 MVC 开始写
CONTROLLER 拿到资料後
交给 MODEL 去封装(变成你想要的资料结果)
然後交给 VIEW 去 RENDER
这样子 OK 了,再去看 N-TIER
你会比较更了解 OO 在干嘛
如果在更进阶一点
再去看 DESIGN PATTERN
你就会知道 MVC 其实也是一种复合设计模式
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.25.20.51
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/PHP/M.1407885035.A.1B0.html
1F:推 cat99961: 非常感谢您,观念写得很好 08/13 14:53
2F:→ cat99961: 还有感谢其他各位 08/13 14:53
3F:→ cat99961: 我现在正在学symfony,希望学了之後可以更具体的了解 08/13 14:55
4F:推 terrybob: 推了,感谢教学! 08/19 17:02