Как передать параметры с помощью помощника по перенаправлению в Zend Framework? - PullRequest
9 голосов
/ 31 марта 2010

Можно ли передать параметры ($ _POST или $ _GET) с помощью помощника по перенаправлению в Zend Framework? Следующий код перенаправляет на индекс действия текущего контроллера, но я бы также хотел передать ему некоторые параметры.

$this->_helper->redirector("index");

Zend Documenataion ничего не говорит об этом.

Ответы [ 2 ]

19 голосов
/ 31 марта 2010

Конечно. Это пример кода из документации Action Helpers (см. Раздел Redirector, примерно на 2/3 пути вниз по странице.) Возможно, вам понадобится получить ссылку на помощника перенаправителя и вызвать его. из goto* методов, которые выполняет этот код.

class ForwardController extends Zend_Controller_Action
{
    /**
     * Redirector - defined for code completion
     *
     * @var Zend_Controller_Action_Helper_Redirector
     */
    protected $_redirector = null;

    public function init()
    {
        $this->_redirector = $this->_helper->getHelper('Redirector');
    }

    public function myAction()
    {
        /* do some stuff */

        // Redirect to 'my-action' of 'my-controller' in the current
        // module, using the params param1 => test and param2 => test2
        $this->_redirector->gotoSimple('my-action',
                                       'my-controller',
                                       null,
                                       array('param1' => 'test', 'param2' => 'test2'));
    }
}
8 голосов
/ 19 апреля 2013

Передать массив как 4-й параметр:

$this->_helper->redirector('action', 'controller', 'module', array('param1' => 'value1'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...