如何通过 Zend 参数传递 URL?
How to pass an URL via Zend parms?
我正在尝试通过 Zend setPara() 传递一个 URL(或只是一个本地文件路径)。不幸的是,路由器将其解释为多个参数。
$redirector = $this->_helper->getHelper('Redirector');
$redirector->gotoSimple('download', null, null, array('TEMP_FILE' => '/srv/www/htdocs/tmp/output.pdf'));
Apache 显示错误 404。未调用 downloadAction()。那么也许还有另一种方法可以将整个 URL 从一个动作传递到另一个动作?
$params = array('param1' => $param1, 'param2' => $param2);
$this->_helper->redirector('download', 'yourcontroller', 'yourmodule', $params);
如果您没有模块..留空
另一个简单的方法
$this->redirect('/module/controller/download/param1/value/param2/value2');
更新
使用 urlencode
作为参数
$this->redirect('/module/controller/download/param1/'.urlencode(value).'/param2/'.urle
ncode(value2).');
访问时使用 urldecode(value);
我正在尝试通过 Zend setPara() 传递一个 URL(或只是一个本地文件路径)。不幸的是,路由器将其解释为多个参数。
$redirector = $this->_helper->getHelper('Redirector');
$redirector->gotoSimple('download', null, null, array('TEMP_FILE' => '/srv/www/htdocs/tmp/output.pdf'));
Apache 显示错误 404。未调用 downloadAction()。那么也许还有另一种方法可以将整个 URL 从一个动作传递到另一个动作?
$params = array('param1' => $param1, 'param2' => $param2);
$this->_helper->redirector('download', 'yourcontroller', 'yourmodule', $params);
如果您没有模块..留空
另一个简单的方法
$this->redirect('/module/controller/download/param1/value/param2/value2');
更新
使用 urlencode
作为参数
$this->redirect('/module/controller/download/param1/'.urlencode(value).'/param2/'.urle
ncode(value2).');
访问时使用 urldecode(value);