Yaf_Controller_Abstract::forward

foward to another action

Description

public void Yaf_Controller_Abstract::forward ( string $action [, array $paramters ] )
public void Yaf_Controller_Abstract::forward ( string $controller , string $action [, array $paramters ] )
public void Yaf_Controller_Abstract::forward ( string $module , string $controller , string $action [, array $paramters ] )

forward current execution process to other action.

Note:

this method doesn't switch to the destination action immediately, it will take place after current flow finish.

Parameters

module

destination module name, if NULL was given, then default module name is assumed

controller

destination controller name

action

destination action name

paramters

calling arguments

Examples

Example #1 Yaf_Controller_Abstract::forwardexample

<?php
class IndexController extends Yaf_Controller_Abstract
{
    public function 
indexAction(){   
         
$logined $_SESSION["login"];
         if (!
$logined) {
             
$this->forward("login", array("from" => "Index")); // forward to login action
             
return FALSE;  // this is important, this finish current working flow
                            // and tell the Yaf do not doing auto-render
         
}

         
// other processes
    
}

    public function 
loginAction() {
         echo 
"login, redirected from "$this->_request->getParam("from") , " action";
    }
}
?>

The above example will output something similar to:

   login, redirected from Index action

Return Values

return FALSE on failure

See Also

  • Yaf_Request_Abstrace::getParam