Как получить параметр URL в Zend Framework? - PullRequest
3 голосов
/ 06 апреля 2010

Я пытаюсь получить параметр, переданный в URL, используя Zend Framework. Но, конечно, это не работает! Мой код выглядит так:

Генерация URL:

<?php echo $this->url(array('controller' => 'poll', 'action' => 'showresults', 'poll_id' => $poll['_id']), null, true) ?>

Извлечение параметра poll_id в showresultsAction ():

 $request = new Zend_Controller_Request_Http();
 $poll_id = $request->getParam('poll_id');

Проблема в том, что $ poll_id имеет значение NULL. Когда я делаю var_dump из $ request-> getParams (), он также равен NULL. Я просмотрел документацию по Zend Framework, но это было не очень полезно. Любая идея ? Спасибо!

Ответы [ 2 ]

7 голосов
/ 06 апреля 2010

Вместо:

$request = new Zend_Controller_Request_Http();
$poll_id = $request->getParam('poll_id');

Попробуйте:

$request = $this->getRequest(); //$this should refer to a controller
$poll_id = $request->getParam('poll_id');

Или:

$poll_id = $this->_getParam('poll_id'); //$this should refer to a controller

Zend Framework автоматически присоединяет объект запроса к контроллеру.

1 голос
/ 26 июля 2016

Попробуйте задействовать это из контроллера:

$params = $this->params()->fromQuery();

Возвращает все параметры URL.

...