ActionStack Плагин ActionStack позволяет управлять стеком запросов и действует как плагин postDispatch. Если в текущем объекте запроса уже задан переход на другое действие, то ничего не делается. Иначе плагин проверяет свой стек, тянет самый верхний элемент и производит переход на действие, заданное в этом запросе. Стек обрабатывается в порядке "последний вошел - первый вышел" (last-in-first-out, LIFO). Вы можете извлечь плагин из фронт-контроллера в любой момент времени, используя Zend_Controller_Front::getPlugin('Zend_Controller_Plugin_ActionStack'). Имея объект плагина, вы можете использовать различные методы для управления им. getRegistry() и setRegistry(). Внутри себя ActionStack использует экземпляр Zend_Registry для хранения стека. Вы можете с помощью этих аксессоров заменить экземпляр реестра на другой или извлечь его. getRegistryKey() и setRegistryKey(). Они могут использоваться для определения того, какой ключ реестра используется при извлечении стека. По умолчанию используется ключ 'Zend_Controller_Plugin_ActionStack'. getStack() позволяет извлечь стек действий целиком. pushStack() и popStack() позволяют соответственно добавлять и извлекать из стека. pushStack() принимает объект запроса. Дополнительный метод forward() ожидает объект запроса в качестве аргумента и устанавливает состояние текущего объекта запроса во фронт-контроллере в состояние переданного объекта запроса, помечая его как необработанный диспетчером (что приводит к еще одной итерации цикла диспетчеризации).