Zend Framework教程-Zend_Controller

来源:互联网 发布:matlab有没有mac版 编辑:程序博客网 时间:2024/03/29 22:29

 Zend Framework的Zend_Controller实现主要涉及到的文件如下:

root@coder-671T-M:/ZendFramework-1.11.11/library/Zend/Controller# tree.├── Action│   ├── Exception.php│   ├── Helper│   │   ├── Abstract.php│   │   ├── ActionStack.php│   │   ├── AjaxContext.php│   │   ├── AutoComplete│   │   │   └── Abstract.php│   │   ├── AutoCompleteDojo.php│   │   ├── AutoCompleteScriptaculous.php│   │   ├── Cache.php│   │   ├── ContextSwitch.php│   │   ├── FlashMessenger.php│   │   ├── Json.php│   │   ├── Redirector.php│   │   ├── Url.php│   │   └── ViewRenderer.php│   ├── HelperBroker│   │   └── PriorityStack.php│   ├── HelperBroker.php│   └── Interface.php├── Action.php├── Dispatcher│   ├── Abstract.php│   ├── Exception.php│   ├── Interface.php│   └── Standard.php├── Exception.php├── Front.php├── Plugin│   ├── Abstract.php│   ├── ActionStack.php│   ├── Broker.php│   ├── ErrorHandler.php│   └── PutHandler.php├── Request│   ├── Abstract.php│   ├── Apache404.php│   ├── Exception.php│   ├── Http.php│   ├── HttpTestCase.php│   └── Simple.php├── Response│   ├── Abstract.php│   ├── Cli.php│   ├── Exception.php│   ├── Http.php│   └── HttpTestCase.php└── Router    ├── Abstract.php    ├── Exception.php    ├── Interface.php    ├── Rewrite.php    ├── Route    │   ├── Abstract.php    │   ├── Chain.php    │   ├── Hostname.php    │   ├── Interface.php    │   ├── Module.php    │   ├── Regex.php    │   └── Static.php    └── Route.php10 directories, 52 files


Zend_Controller提供的具体功能如下:

  • Zend_Controller_Front前端控制器
               主要用于初始化请求环境,根据请求路由,分发动作,收集响应。
  • Zend_Controller_Action
               主要功能是实现Action动作的基本功能。Zend_Controller_Action是一个抽象类,配合前端控制器使用一起来实现动作控制器。动作控制器必须继承此类。
  • Zend_Controller_Action_Helper
               通过动作助手可以为动作控制器提供一些辅助功能。例如常见的助手有Cache,FlashMessenger,Json, Redirector,Url, ViewRenderer。

  • Zend_Controller_Dispatcher
               主要用于路由的分发
  • Zend_Controller_Plugin
                用于注册用户插件

  • Zend_Controller_Request
               请求对象是在前端控制器,路由器,分发器,以及控制类间传递的简单值对象。请求对象封装了请求的模块,控制器,动作以及可选的参数,还包括其他的请求环境,如HTTP,CLI,PHP-GTK。

  • Zend_Controller_Response
               响应对象逻辑上是请求对象的搭档.目的在于收集消息体和/或消息头,因而可能返回大批的结果。

  • Zend_Controller_Router
               Zend_Controller_Router是标准的路由器。路由是个过程,在这个过程中它取出URI的端点(跟着基本URL的URI的那部分)并把它分解成参数来决定哪个模块、哪个控制器和控制器中的哪个动作应该接受请求。模块、控制器、动作和其它参数被打包到Zend_Controller_Request_Http对象,接着这个对象由Zend_Controller_Dispatcher_Standard来处理。路由只发生一次:当请求最初被接收和第一个控制器被派遣之前。



Zend_Controller系统的工作流












原创粉丝点击