Запрос, возвращаемый из Zend_Controller_Front::getRequest()
, безусловно, не случайный, а запрос, который диспетчер обрабатывает в настоящее время, т.е. запрос, который вызвал метод действия вашего контроллера действий и, таким образом, ваш скрипт вида для выполнения. Используя плагин стека действий, вы просто добавляете больше запросов для обработки диспетчером один за другим.
Если вы хотите получить все запросы к стеку действий, вам нужно напрямую запросить плагин стека действий:
<?php
$front = Zend_Controller_Front::getInstance();
$plugin = $front->getPlugin('Zend_Controller_Plugin_ActionStack');
if ($plugin) {
$stack = $plugin->getStack();
foreach ($stack as $request) {
$action = $request->getActionName();
// Do whatever you want with $action
}
} else {
// Not using the action stack
$action = $front->getRequest()->getActionName();
}
?>