2012-07-02 34 views
0

我明白了什么动作助手做,但我想不通的时候都初始化(会为每个实例)。如果我没有错,控制器的_helper属性包含每个助手类的实例集合。动作助手什么时候初始化?

我对不对?如果是的话,都是辅助动作(类对应于助手)在应用的引导初始化(每个HTTP请求)?

回答

1

如果你看一下this part of the ZF manual,你会发现在动作助手是如何工作的多一点信息。

_helper属性确实持有帮手实例的集合,而是保持Zend_Controller_Action_HelperBroker`的”它的实例: -

处理注册助手对象和助手路径,以及检索的细节助手按需提供。

辅助函数不是在引导实例化,但将在对需求的控制,当你在你的控制器使用类似$helper = $this->_helper->getHelper('helperName');被实例化。

+0

感谢您的回答,但对于一些直接帮助像,$这 - > _ helper->网址()?它是否在呼叫中实例化?还有一,如果我重写挂钩的方法,如预执行postDispatch,然后调用这些方法,我必须先注册这个帮手。所以每次我注册一个帮手,这意味着它也被忽略了? – user1495738

+0

无论你怎么称呼一个动作助手它是由helperBroker需要的时候,而不是之前实例化。 – vascowhite

相关问题