首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Zend_Controller_Action_Helper_Abstract和Zend_View_Helper_Abstract之间的区别

Zend_Controller_Action_Helper_Abstract和Zend_View_Helper_Abstract之间的区别
EN

Stack Overflow用户
提问于 2011-02-24 22:17:40
回答 2查看 1.5K关注 0票数 0

我想知道Zend框架中的两个助手Zend_Controller_Action_Helper_AbstractZend_View_Helper_Abstract之间的区别,这是我不明白的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-24 22:21:15

顾名思义:

ActionHelper用于控制器操作中所需的可重用功能,而ViewHelper用于视图模板中的可重用功能。

来自http://zendframework.com/manual/en/zend.controller.actionhelpers.html

操作助手允许开发人员将运行时和/或按需功能注入到任何扩展Zend_Controller_Action的操作控制器中。Action Helpers旨在将扩展抽象Action Controller以注入通用Action Controller功能的必要性降至最低。

来自http://zendframework.com/manual/en/zend.view.helpers.html

在视图脚本中,通常需要一遍又一遍地执行某些复杂的功能:例如,格式化日期、生成表单元素或显示操作链接。您可以使用帮助器类为您执行这些行为。

其主要思想是将经常使用的功能封装到对象中,而不是重新创建该功能或对其使用继承(这将使基类变得臃肿,并违反单一责任原则)。ZF区分ViewHelpers和ActionHelpers,因为它们有不同的职责。ActionHelpers用于帮助处理请求,而ViewHelpers用于帮助渲染模型。

票数 17
EN

Stack Overflow用户

发布于 2011-02-27 03:40:32

简单的经验法则如果你的视图帮助器需要知道你的模型(使用Zend_Db_Table),那么你做错了,而应该使用动作帮助器。Action helper的好处您可以访问诸如preDispatch和postDispatch之类的钩子。

查看助手的好处,你也可以在动作控制器中使用它,例如echo $this->view->myHelper();,我已经看到这个用得很不对劲。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5105808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档