zend framework 重定向方法(render, forward, redirect)总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zend framework 重定向方法(render, forward, redirect)总结相关的知识,希望对你有一定的参考价值。

一. render

render使用来调视图用的,不会调用ACTION内部代码
不指定render

$this->render() ;

结果: {当前Module}/{当前Controller}/{当前Action}.phtml

$this->render(‘bar‘) ;
结果: {当前Module}/{当前Controller}/bar.phtml

二. forward
$this->_forward(‘bar‘) ;
结果: {当前Module}/{当前Controller}/bar

$this->_forward(‘bar‘, ‘foo‘) ;
结果: {当前Module}/foo/bar

$this->_forward(‘bar‘, ‘foo‘, ‘hoge‘) ;
结果: hoge/foo/bar

$params = array(
‘a‘ => ‘1‘,
‘b‘ => ‘2‘
) ;
$this->_forward(‘bar‘, ‘foo‘, ‘hoge‘, $params) ;
结果: /hoge/foo/bar/a/1/b/2

三. redirect
$this->_redirect(‘/hoge‘) ;
结果: /hoge

$this->_redirect(‘/hoge/foo‘) ;
结果: /hoge/foo

$this->_redirect(‘/hoge/foo/bar‘) ;
结果: /hoge/foo/bar

$this->_redirect(‘http://localhost/hoge/foo/bar‘) ;
结果: http://localhost/hoge/foo/bar

$this->_redirect(‘http://localhost/hoge/foo/bar?a=1&b=2‘) ;
结果: http://localhost/hoge/foo/bar?a=1&b=2

四. 特殊情况
不使用 layout
结果: $this->_helper->layout()->disableLayout() ; 

不使用 view
结果: $this->_helper->viewRenderer->setNoRender() ;

 

以上是关于zend framework 重定向方法(render, forward, redirect)总结的主要内容,如果未能解决你的问题,请参考以下文章

PHP Zend Framework:注销后,将用户重定向到他来自的页面

Zend Framework 2.4:在服务器上的空白页中重定向结果,在本地工作

重定向后保留 Zend Form 对象

Play Framework:验证错误重定向的最佳实践

Play Framework - 使用参数重定向

如何在 Zend_framework 中不呈现响应的情况下发送保存的请求