2015-01-19 4 views
2

Я хочу, чтобы получить 2 параметры из URL и использовать их в своем действии, вот мой код:Как получить параметры из url в zend framework 1?

URL: mysite.com/myaction/1/string

MyAction:

public function myactionAction($id, $string) 
{ 

$params = $this->_getAllParams(); 
     print_r($params); 
} 

Я новичок в ZF, так как я могу получить эти 2 параметра?

+0

Попробуйте следующее: '$ value = $ this-> getRequest() -> getParam ('your key');' в вашем действии. –

ответ

2

Вам нужно написать имена Param в URL, а затем получить значение паров в следующем виде:

$param1 = $this->getRequest()->getParam('param1'); 

$param2 = $this->getRequest()->getParam('param2'); 

URL должен выглядеть следующим образом:

http://example.com/mycontroller/myaction/param1/value1/param2/value2 

И если вы хотите, чтобы получить значения из параметров из нижнего регистра:

http://example.com/myaction/value1/value2 

затем перейдите на маршрут Zend. Попробуйте ввести код:

routes.activate.type = "Zend_Controller_Router_Route" 
routes.activate.route = "activate/:param1/:param2" 
routes.activate.defaults.module = "core" 
routes.activate.defaults.controller = "newsletter" 
routes.activate.defaults.action = "activate" 
+0

спасибо, какова должна быть маршрутизация для этого действия, чтобы заставить его принимать параметры? – Mohammad

+0

Вы создаете свои маршруты в файле .ini? –

+0

да, найти ниже действия, которые я хочу, чтобы это получить параметры: '; активировать routes.activate.type = "Zend_Controller_Router_Route" routes.activate.route = "активировать" routes.activate.defaults.controller = «информационный бюллетень» routes.activate.defaults.action = "активировать" ' – Mohammad

Смежные вопросы