2012-06-29 1 views
0

У меня в настоящее время есть URL-адрес, например localhost/zend_practice/countries/index? Data = 1 где страны - это имя моего контроллера, а index - это имя моего действия. Я хотел был бы иметь url как localhost/zend_practice/countries/index/data/1. Также правило принимать числа только для параметров данных get. Как я могу сделать это только для контроллера стран (не для моего другого контроллера)?Url rewriting в zend framework

+1

RTFM: [Стандартный маршрутизатор] (http://framework.zend.com/manual/en/zend.controller.router.html) – prodigitalson

+0

получают этот URL с представлением формы? –

ответ

0

Zend Framework по умолчанию принимает URL в качестве

/контроллер/действие/parameter_name/parameter_value

Вы можете непосредственно использовать свой адрес, как

/Страны/индекса/данных/1

и в коде y ou может получить параметр данных и применить свою логику по мере необходимости. Вот фрагмент.

class CountriesController extends Zend_Controller_Action{ 
    public function indexAction(){ 
     //capture the data parameter 
     $data = $this->_request->getParam('data'); 
     //check data if numeric 
     if(is_numeric($data)){ 
      //your code goes here.... 
     } 

    } 
}