ZF2 - Получить имя контроллера в layout / views

Я знаю, что с ZF1 вы можете получить имя модуля / контроллера с помощью специальных помощников просмотра, которые получат одноэлементный объект frontController и получат там имя.

Используя ZF2, поскольку они устранили много одноэлементной природы фреймворка и представили DI, где я указал псевдонимы для всех моих контроллеров в этом модуле ... Я могу представить, что получу это через доступ к DI или возможно, вставив текущее имя в макет.

Кто-нибудь имел представление, как бы вы это сделали. Я предполагаю, что существует сотня различных способов, но после того, как я понюхал код в течение нескольких часов, я не могу понять, как это должно быть сделано сейчас.

Я хотел, чтобы имя контроллера было добавлено в тело как класс для определенного стиля контроллера.

Спасибо, Дом

16
задан Intellix 12 January 2012 в 22:12
поделиться

1 ответ

Получают контроллер / имя действия в контроллере на Пехлеви 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,
        );
}

, Это работает на меня. Я надеюсь, это также поможет Вам. Спасибо за то, что задали этот вопрос.

0
ответ дан 30 November 2019 в 17:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: