CakePHP中Router的机制和使用方法 培训准备文档.docx

CakePHP中Router的机制和使用方法 培训准备文档.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CakePHP中Router的机制和使用方法 培训准备文档

CakePHP中Router的机制和使用方法准备文档zhangh0011 2011-3-24目录一.预期目标1二.典型CakePHP处理Request的流程2三.回顾上一讲的内容:dispatcher3四.认识router与dispatch、controller的关系4五.Cakephp中router的应用8六.Cakephp中Route配置文件弊端11预期目标进一步扩展研发人员对CakePHP应用的知识深度。深入理解CakePHP中Router的处理机制和用法。加强研发人员对Router认识,引导开发人员合理的使用Router。典型CakePHP处理Request的流程人浏览网站,发出请求。例如:/users/view/1/users/view/1根据上几讲的知识我们知道:.htaccess文件将request映射到webroot/index.php文件,users是controller, view是action,1. 是函数参数。也就是请求users_controller.php 中的 view函数,这时 /app/webroot/index.php 会受到经由 mod_rewrite 转换的网址(mod_rewrite会将 /users/view转换成index.php?url=/users/view),在index.php中,使用Dispatcher(/cake /dispatcher.php),把网址传给Dispatcher。以下是index.php的部分源代码:$dispatcher = new Dispatcher();$dispatcher-dispatch($url);2.dispatcher中,通过Router (/cake/libs/router.php),取得Controller和Action的名称。3.在开始使用Controller的Action之前,先调用当前controller的beforeFilter函数(也就是圈上 Controller的蓝色框所表示的意思)。4.5.6.经过 controller 的 beforeFilter 执行之后,开始调用执行 Action 函数,一般在Action 函数中,一般会使用Models处理数据库数据,用Components处理像Cookie, Session的相关信息,根据你的程序需要,最后将信息通过set()的方式,传给View进行显示。7.在View显示处理之前,会调用 controller 的 beforeRender (也就是7箭头上的蓝色框)。一般视图的显示,会有layout、element和自身action的view版型組成,其中会使用helper來协助处理页面元素的显示。8.在视图显示完成后,回显给使用者前,Dispatcher会再呼叫 controller 的 afterFilter (也就是8箭头的蓝色框)回顾上一讲的内容:dispatcher.htaccess文件将request映射到webroot/index.php文件,此文件中主要的处理:常量的定义;2.包含bootstrap.php文件;3.调用dispatcher()函数认识router与dispatch、controller的关系? 路由(route)从URL中解释并提取出这次请求的参数: 控制器(controller), 动作(action)以及其他在这次请求中影响到业务逻辑的所有其他参数。 ? 使用路由后,请求的URL被映射到一个控制器的动作中(在特定的一个控制器的类的一个方法)**** 部分函数解析 ****1.Router::parse($url):根据提供的url,解析出对应controller、action、params的数组。准则:默认路由、新创建的路由。例如:/users/view/1/users/view/1 - /users/view/12. Router::getArgs($args, $options = array()) 将passed params 转换为参数如上例:$args - 1; $options - Array ( [context] = Array ( [action] = view [controller] = users ) )返回:Cakephp源码包中router.php中:REST是英文Representational State Transfer的缩写,中文翻译:表述性状态转移。REST本身只是为分布式超媒体系统设计的一种架构风格,而不是标准.路由配置返回:(1) Router::connect(/, array(controller = users, action = index, home));(2) Router::co

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档