- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.8 动作助手 动作助手可以向任何Zend_Controller_Action的衍生动作控制器中,即时加入功能(runtime and/or on-demand functionality),以使得增加公共的动作控制器功能时,尽量减少衍生动作控制器类的必要。 动作助手有多种使用方式,它使用了一套经纪系统(brokerage system),与Zend_View_Helpers(视图助手)中使用的也就是Zend_Controller_Plugin的经纪系统类似。动作助手在需要调用时加载,可以在请求的时候或者动作控制器创建的时候进行实例化。 3.8.1 初始化动作助手 根据需求以及助手的功能,可有几种不同的初始化方式。助手经纪人(broker)存储在Zend_Controller_Action动作控制器的$_helper成员中。可以使用经纪人来获取或者调用助手。以下是几种常见的操作方法。 显式调用getHelper()方法 使用助手经纪人的魔术__get()方法 最后,大部分动作助手实现了direct()方法 3.8.2 助手经纪人 助手经纪人,即Zend_Controller_Action_HelperBroker类。该类处理注册助手对象和助手路径,即时的获取助手等细节。 使用addHelper方法可以注册助手。该方法的语法格式如以下代码所示。 addHelper(Zend_Controller_Action_Helper_Abstract $helper) 以上代码中,参数$helper为一个Zend_Controller_Action_Helper对象实例。执行该方法将向助手经纪人中注册助手。 实例化一个助手并传入经纪人相对来说有点耗费时间和资源。不过使用静态方法addPrefix()和addPath()两个方法能够很容易的自动完成这些工作。 addPrefix($prefix) 以上代码中参数$prefix为一个类的前缀,以字符串表示。执行该方法将用来加入自定义助手类的路径。该方法假定前缀遵循Zend Framework的类命名惯例。 addPath($path, $prefix = Zend_Controller_Action_Helper) 该方法第一个参数为一个目录,以字符串表示;第二个参数为类的前缀(默认为Zend_Controller_Action_Helper),执行该方法将用自己的类前缀映射到指定的目录。 3.8.3 内建的动作助手 Zend Framework中默认包含三个动作助手:FlashMessenger用来处理Flash Messenger会话;Redirector提供另一种实现方式,帮助程序重定向到内部或者外部页面;ViewRenderer自动的完成在控制器内建立视图对象并渲染视图的过程。下面分别对这三种内建动作助手进行介绍。 1.FlashMessenger 2.Redirector 3.ViewRenderer 3.9 响应对象 响应对象逻辑上是请求对象的搭档。目的在于收集消息体和/或消息头,因而可能返回大批的结果。另外前端控制器可能传递任何异常到响应对象,允许开发人员优美的处理异常。可以通过设置Zend_Controller_Front::throwExceptions(true)覆盖这项功能。 3.9.1 使用方法 如果要发送响应输出包括消息头,使用sendResponse()。 $response-sendResponse(); 3.9.2 处理消息头 如本节引文中所描述的,响应对象的一项重要职责是收集和发出HTTP响应消息头。所以该类中存在大量的方法,用于完成引集和发出HTTP响应消息头的操作。该类方法有如下几种。 canSendHeaders()方法 setHeader($name, $value, $replace = false)方法 setRedirect($url, $code = 302)方法 getHeaders()方法 clearHeaders()方法 setRawHeader()方法 getRawHeaders()方法 clearRawHeaders()方法 clearAllHeaders() 3.9.3 命名片段 响应对象支持“命名片段”,该机制允许将消息体分割成不同的片段,并呈一定顺序排列。因此输出的是以特定次序返回的。在其内部,主体内容被存储为一个数组,大量的访问器方法可以用来指示数组内的位置和名称。 处理命名片段的方法有以下几类。 setBody()方法和appendBody()方法 prepend($name, $content)方法 append($name, $content)方法 insert($name, $content, $
您可能关注的文档
- 13羧酸及羧酸衍生物2007课件.ppt
- 第2章 几何光学成像课件.ppt
- 第2章 数字图像表示及其处理课件.ppt
- 第2章 细菌的分布与消毒灭菌课件.ppt
- 第2章 医院内感染的预防及控制1.2课件.ppt
- 13细胞分裂和细胞周期课件.ppt
- 13消渴小便不利淋病脉证并治第十三课件.ppt
- 014遗传性疾病课件.ppt
- 14 心脏的生理特性课件.ppt
- 第2章第1节减数分裂和受精课件.ppt
- 8 黄山奇石(第二课时)课件(共22张PPT).pptx
- 22《纸船和风筝》教学课件(共31张PPT).pptx
- 17 松鼠 课件(共23张PPT).pptx
- 23《海底世界》课件(共28张PPT).pptx
- 21《大自然的声音》课件(共18张PPT).pptx
- 第12课《词四首——江城子 密州出猎》课件 2025—2026学年统编版语文九年级下册.pptx
- 第2课《济南的冬天》课件(共42张PPT) 2024—2025学年统编版语文七年级上册.pptx
- 17 跳水 第二课时 课件(共18张PPT).pptx
- 第六单元课外古诗词诵读《过松源晨炊漆公、约客》课件 统编版语文七年级下册.pptx
- 统编版六年级语文上册 22《文言文二则》课件(共27张PPT).pptx
原创力文档


文档评论(0)