① 哪里有php mvc方面的优秀教程啊!请大家推荐
建议去接触一下 smarty和CodeIgniter 都是比较好用的MVC架构 直接看着他们的手册就能够对mvc有更深一步的理解了。呵呵 希望我说的对你有用!
② php中MVC的开发模式如何去理解
MVC设计模式把一个软件组件区分为三个不同的部分,model,view,controller。
MVC模式是"Model-View-Controller"的缩写,中文翻译为"模式-视图-控制器"。MVC应用程序总是由这三个部分组成。Event(事件)导致Controller改变Model或View,或者同时改变两者。只要Controller改变了Models的数据或者属性,所有依赖的View都会自动更新。类似的,只要Controller改变了View,View会从潜在的Model中获取数据来刷新自己。MVC模式最早是smalltalk语言研究团提出的,应用于用户交互应用程序中。smalltalk语言和java语言有很多相似性,都是面向对象语言,很自然的SUN在petstore(宠物店)事例应用程序中就推荐MVC模式作为开发Web应用的架构模式。MVC模式是一种架构模式,其实需要其他模式协作完成。在J2EE模式目录中,通常采用service to worker模式实现,而service to worker模式可由集中控制器模式,派遣器模式和Page Helper模式组成。而Struts只实现了MVC的View和Controller两个部分,Model部分需要开发者自己来实现,Struts提供了抽象类Action使开发者能将Model应用于Struts框架中Model是代表组件状态和低级行为的部分,它管理着自己的状态并且处理所有对状态的操作,model自己本身并不知道使用自己的view和controller是谁,系统维护着它和view之间的关系,当model发生了改变系统还负责通知相应的view。
View代表了管理model所含有的数据的一个视觉上的呈现。一个Model可以有一个以上的View,但是Swing中却很少有这样的情况。
Controller管理着model和用户之间的交互的控制。它提供了一些方法去处理当model的状态发生了变化时的情况。
③ php架构,mvc开发模式,php程序员工作~
PHP开发框架背后的思想被称为“模型—视图—控制器”(MVC)。MVC是这样一种架构模式,它隔离了业务逻辑与UI,允许其一改变而另一者不受影响。(也可以说是关注点的隔离)在MVC中,模型负责数据,视图负责表现,控制器则是程序主体或者说是负责业务逻辑。从本质上说,MVC拆分了一个程序的开发过程,这样你就可以修改独立的每一部分,而其他部分不受影响,这是十分重要的,它使得编写PHP代码更为快捷简单
开发者可能出于不同的考虑而使用PHP开发框架,不过首当其冲的原因是为了加速开发过程。相似工程之间的代码重用能够节省开发者大量的时间和精力。PHP开发框架内置了预建的模块,免去了冗长又令人厌烦的编程工作。这样开发者就能够把时间活在开发实际程序上,而不是每一次都要为每一个项目重建基础模块。
④ 关于pHP设计mvc!!!对于mvc 的设计理解我都了解,但是具体操作,写代码时是怎样一个顺序,应该从哪开始3Q
我建议你可以下载一个ThinkPHP的框架,这个框架完全是以MVC来完成的,看看其中带的示例源代码,估计你会对MVC有个比较明确的认识。
⑤ 如何入门一个PHP MVC框架
一。选择 一个框架
至于选哪一种框架,主要看个人,1)最好是身边朋友都有人在用,因为你不懂的时候方便解决。有时候论坛,手册上的解答你未必理解的通透,特别是没有接触过框架的phper来说,更是不知所云。2)选择此框架论坛比较活跃的,这是身有同感,前一段时间玩qeephp框架的时间,论坛冷冷清清的,工作需要,没办法,只能硬着上了,遇到问题的时候,回答的问题的人很少,同时手册之类只写了某部分,还有很多部分并没有写上去。对于一个新手来说,直接KO了。
二。熟悉数据库的操作
每一个框架都有自己的操作方法,这是必须要学会的。select,delete,insert,update这几种用法摸熟。最快的方法是看手册,查找对应的操作。同时要知道其中的调试方法,你就可以看到原生的操作有没有错误。基本都会了,这个框架至少可以开始开发项目了。
三。论坛官方网站
这个很重要,先看手册,遇到问题先在论坛里查找一下有没有人遇到过你这种情况,有就不用发问了。然后同一个问题,很少人再去回答一遍。有时候遇到自己能解决的问题,也回答一下,这样可以加深你的理解,不要觉得浪费你的时间,这前提是你有时间的情况下。所以本着人人为我,我为人人的精神
四。下载一个案例。
我经常是这样,不知道某个功能怎样调用的时候,直接找案例里相对应的功能看代码,看人家是怎样调用的,再加上自己的见解。
五。手册的类
MVC一般都有自带一些类了,方便用户操作,有了自己就不用再写对应的代码了。
六。要有“拿来主义”精神
别人的东西,你自己融会贯通了,东西就是你的了。
⑥ 谁知道那有关于PHP MVC模式的教程,请大家多多提供
不建议你学习国外的,一般都比较难弄懂的。
php框架太多了,你找一个简单点的来学习入门,以后的都变得很好学习了。
你可以学习一个入门简单点的,例如thinkphp,是中国的。
官方网站http://www.thinkphp.cn/
入门教程http://www.thinkphp.cn/Manual/4/
⑦ PHP程序,不用框架,如何写成MVC模式的程序呢
至于M层,即model层,是要对数据库的操作即一些数据相关操作,可以单独抽
出来封装函数或者是一个类,由C层调用其中的方法来实现与页面交互的操作请
求,所有接受或者受到的数据经过C层调用M层进行操作,并反馈C层,提示在V
层; 通俗点讲,就是说你把一些具体的方法及操作数据库的执行方法都封装成
函数或者类,在另一个文件中,然后由C层去引用调用或者继承,从而实现传统
的MVC。
⑧ 如何用PHP实现自己的MVC
MVC三个字母的含义: M:Model 模型,负责数据库操作。 V:View 视图,负责调用Model调取数据,再调用模板,展示出最终效果。 C:Controller 控制器,程序的入口,决定改调用哪个View,并告诉View该做什么。 下面是一个超级简单的MVC结构实现: Controller.php include 'Model.php'; include 'View.php'; class Controller { private $model = ''; private $view = ''; public function Controller(){ $this->model = new Model(); $this->view = new View(); } public function doAction( $method = 'defaultMethod', $params = array() ){ if( empty($method) ){ $this->defaultMethod(); }else if( method_exists($this, $method) ){ call_user_func(array($this, $method), $params); }else{ $this->nonexisting_method(); } } public function link_page($name = ''){ $links = $this->model->getLinks(); $this->view->display($links); $result = $this->model->getResult($name); $this->view->display($result); } public function defaultMethod(){ $this->br(); echo "This is the default method. "; } public function nonexisting_method(){ $this->br(); echo "This is the noexisting method. "; } public function br(){ echo ""; } } $controller = new Controller(); $controller->doAction('link_page', 'b'); $controller->doAction(); Model.php class Model { private $database = array( "a" => "hello world", "b" => "ok well done", "c" => "good bye", ); //@TODO connect the database //run the query and get the result public function getResult($name){ if( empty($name) ){ return FALSE; } if( in_array($name, array_keys( $this->database ) ) ){ return $this->database[$name]; } } public function getLinks(){ $links = "Link A "; $links.= "Link B "; $links.= "Link C "; return $links; } } View.php class View { public function display($output){ // ob_start(); echo $output; }
⑨ PHP的哪个MVC框架最值得推荐
1、Laravel,laravel这个框架很有意思,定时任务,数据迁移,大概你能在web中想到的功能这个框架都可以提供,它的路由借鉴了Ruby on Rails 和python的flask框架,但是还提供了web方面其它的一些功能,你可以把它想象成PHP中像Java一样强大的Web中的瑞士军刀,前提是你不考虑性能,因为它的实现使用了大量的闭包和反射,大概在PHP里严格引入设计模式的也只有这个了。
生产效率:5星
学习难度:5星(5星为最难,学习成本最高,下同)
性能:2星
社区活跃:4星(社区活跃可以很方便的找到别人已经开发的功能,专指中文文档,组件丰富性)
2、ThinkPHP5,大概3年前研究过TP3源码,使用起来简单,因为自动加载的问题,性能是个坑,现在发展到5,个人认为已经是一个相当优秀的框架了,路由定义简单,配置简单,文档丰富,社区也相当活跃
生产效率:5星
学习难度:1星
性能:4星
社区活跃:4星
3、Yii2,Yii2的路由分发跟TP5稍微有点不一样,也使用了反射的功能,自动加载现在都使用的composer,大体上都差不多,都有延时加载,Yii2的路由相对智能一些,不用去手动维护,类似于TP3所以使用起来也是很方便,性能比TP5应该略差点,没测试过,从源码来看
生产效率:5星
学习难度:2星
性能:3.5星
社区活跃:4星(很多强大的组件,你只要下载就行了,会省很多事)
4、CakePHP,这个框架内部的封装性看上去没上面那几个优美,但是它自己实现了use关键字功能,所以兼容性来看应该是比上面那几个好点的,但这在新项目上应该不是问题,新项目上PHP7,啥都别想,准没错。它的路由定义类似于TP5但是稍微多点功能,不过其实是个鸡肋。中文文档就不说了,很不好找。不过也算是个相对简单的框架严格遵循MVC
生产效率:3星
学习难度:3星
性能:4星
社区活跃:2星
5、Workman,这个框架相当强大,如果你要实现一些复杂的协议或者用php做一些websocket推送或者TCP/UDP服务器的话,这个框架可能可以满足你的需求,也有一些异步的组件,比较高级的框架,初中级程序员可能用不上
生产效率:3星
学习难度:4星
性能:3星
社区活跃:2星
6、swool,这是个相当有意思的框架,性能很强大,旁友,你听说过异步编程的nodejs,python的tornado框架吗,这个在php里做的就是一个这样的事情,国内的一位老兄开发的C扩展,用php来异步编程,看了下文档,稍微做了个性能测试,相当优秀,就是不知道在项目中重度使用会不会踩到什么坑,而且这也是一个相当高级的框架。大部分人可能直接转node了吧,毕竟node生态环境已经相当好了,总之,如果你想用php试试异步编程来提高性能,非这个框架莫属。性能独一档,编程难度也相对高一些,你需要有些进程的理论基础
生产效率:3星
学习难度:4星
性能:6星
社区活跃:2星
7、Yaf,鸟哥写的c扩展框架,然而你要自己实现很多轮子,生态环境是个大问题。
生产效率:4星
学习难度:4星
性能:5.5星
社区活跃:2星
其它框架还没怎么了解,国内的话,根据具体业务,选上面几个,没错。
⑩ php如何实现mvc框架,一定要突出php实现,不是其他语言!!!求大神(最好有步骤)
第一步,单一入口,任何页面都请求的是根目录index.php文件,通过querystring或者pathinfo两种方式任选一种或两种都用来获取参数。如果能用URL重写隐藏URL地址中的index.php更好。
第二步,在index.php中处理接受到的参数,至少要从这些参数中获得控制器(MVC中的C)的名称,和方法的名称,控制器是一个类,有了控制器的名称就可以调用这个类,并通过方法的名称来执行控制器里面的某一个方法,其它参数可以作为这个方法的参数。如果项目较大,还可以把控制器分成不同模块,放在不同目录里。
第三步,在控制器里面处理用户提交数据,执行流程控制,最后将结果输出到视图文件(MVC中的V)上,视图文件也可以叫模板,可以在控制器里直接include,也可以使用模板引擎。
补充1:模型(MVC中的M)指的是数据库模型,也就是各个数据表的数据处理逻辑,你可以做一个数据库的操作类,也可以做一个ORM对象关系映射框架,在控制器中需要处理数据的时候直接调用就行了。其实PHP中的M比较模糊,看你的习惯,本来MVC开发模式就是为了提高开发效率的,所以你觉得怎么方便怎么来。
补充2:你还可以把常用的功能都封装成类,一个类实现一个功能,这些类的集合就是类库,就是我们常说的轮子。简单的功能也可以做成函数。总之,在需要的时候调用就行了。
补充3:现在几乎所有主流的PHP框架都是MVC,你如果已经明白了PHP的编程基础,不妨可以学习一两种框架,这样你很快就明白MVC了,并且可以开发自己的框架。
补充4:你以为这么多字我是复制的吗?我可真的都是手打出来的,我一定是太闲了,采纳吧!