Blog

19 search results for:

19

Zend_Controller 基础

/ in Blog / by jackson
Zend_Controller系统被设计为轻量、模块化、和可扩展的系统。虽然它提供了足够多的功能结构让你的系统建立在Zend_Controller之上并 Zend_Controller工作流用若干组件来实现。虽然不需要完全理解所有组件的基础知识来使用它,但是拥有工作流程的知识很有帮助。 1) Zend_Controller_Front 控制了Zend_Controller系统的整个工作流。它是前端控制器(FrontController)模型的解释。Zend_Controller_Front处理所有由服务器接收的请求并负责把请求派发给动作控制器(ActionControllers)(Zend_Controller_Action)。 2) Zend_Controller_Request_Abstract (often referred to as the Request Object)描述请求环境和提供设置和读取控制器和动作名字以及任何请求参数的方法。另外它跟踪它所包含的动作是否被Zend_Controller_Dispatcher派遣。抽象请求对象的扩展可被用来封装整个请求环境,为了设置控制器和动作的名字,它允许路由器从请求环境中读出信息。缺省地,Zend_Controller_Request_Http被用来访问整个HTTP请求环境。 3) Zend_Controller_Router_Interface用来定义路由器。路由是个过程,在这个过程中它通过检查请求环境来决定哪个个控制器和哪个控制器中的动作应该接受请求。控制器、动作和可选的参数就通过 4) Zend_Controller_Dispatcher_Standard处理来设置在请求对象中。路由只发生一次:在最初收到请求并在第一个控制器被派遣之前。缺省路由器, 5) Zend_Controller_Router_Rewrite,从 6) Zend_Controller_Request_Http取出URI的终点作为参数并基于在url中的路径信息分解成控制器、动作和参数。作为一个例子,URL https://localhost/foo/bar/key/value将被解析为foo控制器、bar 动作和带有一个值value的参数key。 7) Zend_Controller_Dispatcher_Interface被用来定义派遣器。派遣是个过程,在这个过程中它从请求对象中取出控制器和动作并映射它们到控制器文件/类和在控制器中的动作方法。如果控制器和动作不存在,它派遣缺省的控制器和动作。实际的派遣过程包括初始化控制器类和在这个类中调用动作方法。 不像路由,只发生一次,派遣是循环发生的。如果请求对象的派遣状态在任何点上重置,循环将被重复,调用不论哪个当前在请求对象中的动作。第一次循环随请求对象的派遣状态设置(布尔 true)完成,它将完成处理。缺省的派遣器是 8) Zend_Controller_Dispatcher_Standard。它定义控制器为以Controller结尾的…

Need Translation Service?

Please enter your personal details and we will contact you shortly.