Zend newbie - логика на основе URL - PullRequest
1 голос
/ 18 августа 2010

URL-адрес: http://mySite.com/adminusers/listusers/

мой контроллер называется

открытая функция listusersAction ()

http://mySite.com/adminusers/listusers/regular      
http://mySite.com/adminusers/listusers/premium
http://mySite.com/adminusers/listusers/excecutive

Как я могу захватить последний фрагмент URL-адреса в качестве пареремера в файле fileusersAction контроллера?

спасибо

1 Ответ

0 голосов
/ 23 марта 2011

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

routes.adminusers-listusers.type = "Zend_Controller_Router_Route_Regex"
routes.adminusers-listusers.route = "adminusers/listusers/(\w+)"  
routes.adminusers-listusers.defaults.controller = adminusers
routes.adminusers-listusers.defaults.action = listusers
routes.adminusers-listusers.map.1 = "usertype"
routes.adminusers-listusers.reverse = "adminusers/listusers/%s"

Затем на вашем контроллере вы можете получить доступ к типу пользователя, запросив параметры запроса:

$params = $this->getRequest()->getParams();
$userType = $params['usertype'];
...