我正在構建一個基於Action Helper的小部件系統。每個小部件處理段響應以修改渲染視圖。 但是,我有一個問題。 的小部件調用一個控制器插件,在preDispatch,就像這樣:Zend Framework:我如何擁有一個Action Helper的多個實例?
// $widgets : list of widget to call
foreach($widgets as $segment =>$widget) {
Zend_Controller_Action_HelperBroker::addHelper(
new $widget($segment));
}
這worsk罰款。但是,如果我有兩次相同的窗口小部件調用,那麼窗口小部件只會調用一次。 例子:
Zend_Controller_Action_HelperBroker::addHelper(
new Menu_Widget($segment=’menu’),
new Menu_Widget($segment =’right’),
);
如果我做了轉儲檢查堆棧:
Zend_Debug::dump(Zend_Controller_Action_HelperBroker::getStack());
我能看到的只是一個時間Menu_Widget這個數組英寸
我怎樣才能擁有同一個Action Helper的多個實例?
對不起,我的英語。
這也許[鏈接](http://weierophinney.net/matthew/archives/246-Using-Action-Helpers-To-Implement-Re-Usable-Widgets.html)會給你一些信息。 – Marcin 2011-03-23 12:20:37