Я знаю, что с ZF1 вы можете получить имя модуля / контроллера с помощью специальных помощников просмотра, которые получат одноэлементный объект frontController и получат там имя.
Используя ZF2, поскольку они устранили много одноэлементной природы фреймворка и представили DI, где я указал псевдонимы для всех моих контроллеров в этом модуле ... Я могу представить, что получу это через доступ к DI или возможно, вставив текущее имя в макет.
Кто-нибудь имел представление, как бы вы это сделали. Я предполагаю, что существует сотня различных способов, но после того, как я понюхал код в течение нескольких часов, я не могу понять, как это должно быть сделано сейчас.
Я хотел, чтобы имя контроллера было добавлено в тело как класс для определенного стиля контроллера.
Спасибо, Дом
Получают контроллер / имя действия в контроллере на Пехлеви 3 платформы
private function getControllerActionName()
{
$currentController = $this->getEvent()->getRouteMatch()->getParam('controller', 'index');
$explode_controller = explode('\\', $currentController);
$currentController = strtolower(array_pop($explode_controller));
$currentController = str_replace('controller', '', $currentController);
$currentAction = strtolower($this->getEvent()->getRouteMatch()->getParam('action', 'index'));
return array(
'controller' => $currentController,
'action' => $currentAction,
);
}
, Это работает на меня. Я надеюсь, это также поможет Вам. Спасибо за то, что задали этот вопрос.