(Yaf >=1.0.0)
Yaf_Controller_Abstract::forward — Transfère vers une autre action
$action
[, array $paramters
] )$controller
, string $action
[, array $paramters
] )$module
, string $controller
, string $action
[, array $paramters
] )Transfère le processus d'exécution courant vers une autre action.
Note:
Cette méthode ne bascule pas vers l'action de destination immédiatement ; ce sera le cas un fois le flux courant terminé.
module
Nom du module de destination ; si NULL est fourni, alors le nom du module par défaut sera utilisé
controller
Nom du contrôleur de destination
action
Nom de l'action de destination
paramters
Arguments d'appel
Exemple #1 Exemple avec Yaf_Controller_Abstract::forward()
<?php
class IndexController extends Yaf_Controller_Abstract
{
public function indexAction(){
$logined = $_SESSION["login"];
if (!$logined) {
$this->forward("login", array("from" => "Index")); // transfère vers l'action 'login'
return FALSE; // ceci est important ; cela termine le flux d'exécution courant
// et indique à Yaf de ne pas effectuer auto-affichage
}
// autres processus
}
public function loginAction() {
echo "login, redirected from ", $this->_request->getParam("from") , " action";
}
}
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
login, redirected from Index action
Retourne FALSE
en cas d'échec.