Yaf_Controller_Abstract::redirect()

重定向用户请求到另一个URL

首字母:Y

函数名称:Yaf_Controller_Abstract::redirect()

函数描述:该函数用于重定向用户请求到另一个URL。

适用版本:Yaf框架版本3.0.0以上

用法:

  1. 基本用法:

    $this->redirect($url);
    

    参数$url为重定向的目标URL。

  2. 重定向到指定模块、控制器和动作:

    $this->redirect('/module/controller/action');
    

    通过指定模块、控制器和动作的方式进行重定向。

  3. 重定向并传递参数:

    $this->redirect('/module/controller/action', array('param1' => 'value1', 'param2' => 'value2'));
    

    可以通过数组传递参数,参数将会以GET方式附加在URL后面。

  4. 重定向到指定路由:

    $this->redirect('/route_name');
    

    可以通过指定路由名称进行重定向。

示例:

假设我们有一个模块名为"demo",控制器名为"index",动作名为"index",我们可以使用如下代码进行重定向:

class IndexController extends Yaf_Controller_Abstract
{
 public function indexAction()
 {
 // 重定向到/demo/index/test
 $this->redirect('/demo/index/test');
 }
}

假设我们需要传递参数,我们可以使用如下代码进行重定向:

class IndexController extends Yaf_Controller_Abstract
{
 public function indexAction()
 {
 // 重定向到/demo/index/test?param1=value1¶m2=value2
 $this->redirect('/demo/index/test', array('param1' => 'value1', 'param2' => 'value2'));
 }
}

需要注意的是,重定向操作会立即结束当前请求,并将用户重定向到指定URL。因此,如果在重定向之后还有一些逻辑需要执行,应该在重定向之前将这些逻辑处理完毕。

同首字母函数