PHP-如何实现MVC思想?

发布于 2016-12-31 09:27:36 字数 655 浏览 1226 评论 3

我始终不太明白怎么去实现MVC思想,我大概清楚MVC思想的结构,但具体实现我依然非常的迷糊?就好像现在一些操作控制我是用SWITCH,如何实现到控制器去操作呢?这个我完全没有思路,哪位朋友可以详细举个例子给我?

switch($_GET['op']){
case 'list':
$result = Article::List_Ad_Article();
break;
case 'single':
$result = Article::Single_Ad_Article();
break;
case 'add':
$result = Article::Add_Ad_Article();
break;
case 'update':
Article::Update_Ad_Article();
break;
case 'del':
Article::Del_Ad_Article();
break;
default:

break;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

归属感 2017-10-08 18:26:06

建议看看开源的php框架,比如codeigniter:
http://codeigniter.com/
里面对mvc的实现说的很详细。

清晨说ぺ晚安 2017-01-12 18:34:24

(1)mvc的概念
mvc就是模型(model)+视图(view)+控制(controller):
1 model层实现系统中的业务逻辑;
2 view层用于展示数据,并与用户的交互;
3 controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。

(2)mvc的思路
controller负责处理某个请求,他的工作包含两个内容:1 调用model来处理业务逻辑 2 调用view来展示数据。

(3)mvc的设计
mvc是一种编程思想,至于代码设计,你可以根据分层来设计,只要做到职责划分清晰就可以了,以后可以根据需求来重构以便丰富该框架。

至于mvc在http中的应用中,关键是要解决url与controller如何映射的问题,现在罗列几个现成的方案:
1 通过将controller名称来作为url的基础来将controller映射到url,如spring
2 用配置文件来将controller映射到url,如struts
3 使用controller代码中的元数据将controller映射到url,如spring

泛泛之交 2017-01-10 14:37:54

一般MVC中,一个URL可以对应一个唯一的Controller Action,所以你应该把不同的功能抽象为URL并在对应的Action中实现,而不是全部放在一起用Switch,下面是伪代码,供参考

URL: /article

对应
articleController::listAction()
{
Article::List_Ad_Article();
}

URL: /article/single/id

对应
articleController::singleAction()
{
Article::Single_Ad_Article();
}

URL: /article/add

对应
articleController::addAction()
{
Article::Add_Ad_Article();
}

RESTFul式的资源设计可能会更简洁。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文