wrz 29

Kolejny banalny element który opisuję ale może komuś się przyda. Ostatnio Wymyśliłem sobie klasę która na podstawie nazwy kontrolera i akcji sprawdza uprawnienia użytkownika. W tym celu w samej klasie potrzebowałem pobrać nazwę kontrolera oraz akcji.

Nie wynikajmy i nie dyskutujmy o poprawności takiego rozwiązania, ale skupmy się na samym, że tak powiem problemie:

$request = Zend_Controller_Front::getInstance()->getRequest();
$controllerName = $request->getControllerName();
$actionName = $request->getActionName();

Myślę, że powyższy kod nie wymaga większego wyjaśnienia

Autor siema \\ tagi: , , , , , , , ,



2 Odpowiedzi do “Pobranie nazwy kontrolera i akcji w zendzie”

  1. shy napisał(a):

    Dziękuję dziękuję dokładnie tego mi trzeba było.

    Następnym razem zamiast opisywać dokładnie i tłumaczyć się dlaczego wklejasz coś ‘oczywistego’ krótko daj opis i kod.

    Myślę, że w wielu przypadkach jest tak jak tu, że początkujący wie czego się spodziewać, więc gdy zobaczy controller->getInstance to skojarzy, ale nie wie co wpisać w google.

  2. pewu napisał(a):

    Mi się też to przydało przy stylowaniu menu. Wydaje mi się jednak, że takie coś nie powinno być odpalane w layout i jest niezgodne ze wzorcem MVC Mam tak w pliku layout-u:
    $policz = $controllerName.’/’.$actionName;

    <?php $policz == 'index/index' ? $html = '’ : $html = ”; echo $html; ?>
    <a href="url(array(‘controller’ => ‘index’, action => ‘index’)) ?>” id=”m1″ title=”Strona główna” class=”menu_start”>HOME
    <?php $policz == 'index/program' ? $html = '’ : $html = ”; echo $html; ?>
    <a href="url(array(‘controller’ => ‘index’, action => ‘program’)) ?>” id=”m2″ title=”Seo precel” class=”menu_start”>O PROGRAMIE