谁可以快速的让我理解MVC 在网上也查了一下资料,对MVC的概念还是很模糊。什么模型,视图,控制器。。谁可以快速的让我理解MVC 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 没啥能快速理解,多看,多想。我从接触到MVC时不理解,到现在大概理解,已经过了2年了。 google到的最简单的PHP MVC留言本实例 简单的说 MVC 就是这样<?phpcontrol(); //进入控制器function model() { retuurn 'abcd';} function view($v) { echo "<b>$v</b>";}function control() { if($_GET['action'] == 'show') { //根据传入的参数决定完成什么工作 $d = mode(); //执行特定的业务逻辑 view($d); //将加工好的数据交由 view 输出 }} MVC关键字:1,整站单一入口2,URL路由请求到特定控制器特定方法3,控制器(C)操作模型(M)处理输入得到输出,最后交给视图(M)格式化为HTML,最终输出给浏览器。 你可以 用VB来理解model 相当于数据源view 相当于控价control 相当于事件 个人理解,MVC的目的是要把数据层、业务逻辑层和展现层分开数据层(M)主要用于跟数据库的通信操作,不涉及任何业务逻辑,简单来说数据库里的数据长什么样映射到你的数据层就是什么样控制层(C)主要用于处理业务逻辑,你从展现层得到的数据,经过各种处理最终写到数据库,或者你从数据库得到数据,经过各种处理然后给到展现层,这里的各种处理就是在控制层完成,是你对业务逻辑的处理展现层(V)主要用于数据的展现和跟用户的交互,也不应该涉及业务逻辑本来没有MVC所有的事情可以在一个文件里做完,但是这样代码结构不清晰,复用性差,比如你有好几个业务逻辑用到了同一部分的数据,就会有一堆相似的代码,一旦数据通信方式做了更改,要对所有涉及到的地方都做更改,很痛苦。其实个人觉得如果你学过VB的话,10楼的解释还挺形象的 你可以自己总结一下你所认为的 一个web请求的运行过程,然后对照楼上的答复,大概就能对应上了 练习 做个mvc练习就了解了 你去一家公司面试,首先接触到前台(controller),你给前台简历(输入数据),前台将简历给面试官(model),面试官告诉前台你简历达不到要求,前台告诉你你可以滚蛋了(输出数据),而你就是那个悲催的view 不知道LZ懂了没,感觉上面的答案都不给力。www.ITCAST.NET上面下各级视频看看吧,看完你就会了~~ 其实,这个你可以看下 thinkphp视频,可以让你很清楚的理解MVC模式开发 与其解释,还不如说说MVC能做些什么?和PHP有什么关系?应用在哪些地方? 话说:我对mvc也只停留在浅层理解啊、 楼主看看这个 http://www.ruanyifeng.com/blog/2007/11/mvc.html 都是大同小异的 TMD,你当是吃快餐的。给你个阉割版本的MVC实例,估计你也不能学以致用,举一反三。那给你又有什么用?老老实实看去书,阅读开源程序吧! 建议用个框架写个一个最简单的hello world功能,框架像thinkphp,CI等比较容易上手。 已有用友这类公司的OA软件,那用php开发OA有前途吗 file_get_contents请求 问下php,php-cgi phpfpm 间的关系 求算法 求discuz高手解惑 高手请进,高价寻求phpcms二次开发外包人员 100分请教如何学php ecshop报错:Hacking attempt smarty报错yntax error: unrecognized tag 能给我推荐一款国产的系统嘛 类似joomla或drupal的 php页面加载很慢 dedecms收费文章的浏览方式修改
最简单的PHP MVC留言本实例
control(); //进入控制器function model() {
retuurn 'abcd';
} function view($v) {
echo "<b>$v</b>";
}function control() {
if($_GET['action'] == 'show') { //根据传入的参数决定完成什么工作
$d = mode(); //执行特定的业务逻辑
view($d); //将加工好的数据交由 view 输出
}
}
1,整站单一入口
2,URL路由请求到特定控制器特定方法
3,控制器(C)操作模型(M)处理输入得到输出,最后交给视图(M)格式化为HTML,最终输出给浏览器。
model 相当于数据源
view 相当于控价
control 相当于事件
数据层(M)主要用于跟数据库的通信操作,不涉及任何业务逻辑,简单来说数据库里的数据长什么样映射到你的数据层就是什么样
控制层(C)主要用于处理业务逻辑,你从展现层得到的数据,经过各种处理最终写到数据库,或者你从数据库得到数据,经过各种处理然后给到展现层,这里的各种处理就是在控制层完成,是你对业务逻辑的处理
展现层(V)主要用于数据的展现和跟用户的交互,也不应该涉及业务逻辑
本来没有MVC所有的事情可以在一个文件里做完,但是这样代码结构不清晰,复用性差,比如你有好几个业务逻辑用到了同一部分的数据,就会有一堆相似的代码,一旦数据通信方式做了更改,要对所有涉及到的地方都做更改,很痛苦。
其实个人觉得如果你学过VB的话,10楼的解释还挺形象的
然后对照楼上的答复,大概就能对应上了
www.ITCAST.NET上面下各级视频看看吧,看完你就会了~~
给你个阉割版本的MVC实例,估计你也不能学以致用,举一反三。那给你又有什么用?
老老实实看去书,阅读开源程序吧!