(Yaf >=1.0.0)
Yaf_Controller_Abstract::forward — Transfère vers une autre action
$controller
, string $action
, array $paramters
= ?): bool$module
,$controller
,$action
,$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
Cette fonction retourne true
en cas de succès ou false
si une erreur survient.
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";
}
}
?>
Résultat de l'exemple ci-dessus est similaire à :
login, redirected from Index action