la classe Yaf_Controller_Abstract
(No version information available, might only be in SVN)
Introduction
Yaf_Controller_Abstract est le coeur du système Yaf ; architecture MVC (pour Model-View-Controller) permettant de séparer la logique applicative de la logique d'affichage.
Tous les controlleurs personnalisés doivent hérités de la classe Yaf_Controller_Abstract.
Vous devriez vous apercevoir que vous ne pouvez pas définir de fonction __construct pour votre controlleur personnalisé, aussi, la classe Yaf_Controller_Abstract fournit une méthode magique pour cela : Yaf_Controller_Abstract::init().
Si vous avez défini une méthode init() dans votre controlleur personnalisé, elle sera appelée lors de l'instanciation de votre contrôleur.
Les actions peuvent avoir des arguments, lorsqu'une requête arrive, s'il y a la même variable dans les paramètres de la requête (voir Yaf_Request_Abstract::getParam()) après le routage, Yaf les passera à la méthode de l'action (voir Yaf_Action_Abstract::execute()).
Synopsis de la classe
$module
[, string $controller
[, string $action
[, array $paramters
]]] )Propriétés
- actions
-
Vous pouvez aussi définir une méthode d'action dans un script PHP séparé en utilisant cette propriété et Yaf_Action_Abstract.
Exemple #1 Définission d'une action dans un fichier séparé
<?php
class IndexController extends Yaf_Controller_Abstract {
protected $actions = array(
/** maintenant dummyAction est défini dans un fichier séparé */
"dummy" => "actions/Dummy_action.php",
);
/* la méthode de l'action peut avoir des arguments */
public indexAction($name, $id) {
assert($name == $this->getRequest()->getParam("name"));
assert($id == $this->_request->getParam("id"));
}
}
?>Exemple #2 Dummy_action.php
<?php
class DummyAction extends Yaf_Action_Abstract {
/* une classe d'action doit définir cette méthode comme point d'entrée */
public execute() {
}
}
?> - _module
-
Nom du module
- _name
- _request
-
L'objet de la requête
- _response
- _invoke_args
- _view
-
Le moteur de visualisation
Sommaire
- Yaf_Controller_Abstract::__clone — Yaf_Controller_Abstract ne peut être clôner
- Yaf_Controller_Abstract::__construct — Constructeur de Yaf_Controller_Abstract
- Yaf_Controller_Abstract::display — Le but de display
- Yaf_Controller_Abstract::forward — Le but de forward
- Yaf_Controller_Abstract::getInvokeArg — Le but de getInvokeArg
- Yaf_Controller_Abstract::getInvokeArgs — Le but de getInvokeArgs
- Yaf_Controller_Abstract::getModuleName — Le but de getModuleName
- Yaf_Controller_Abstract::getRequest — Le but de getRequest
- Yaf_Controller_Abstract::getResponse — Le but de getResponse
- Yaf_Controller_Abstract::getView — Le but de getView
- Yaf_Controller_Abstract::getViewpath — Le but de getViewpath
- Yaf_Controller_Abstract::initView — Le but de initView
- Yaf_Controller_Abstract::redirect — Le but de redirect
- Yaf_Controller_Abstract::render — Le but de render
- Yaf_Controller_Abstract::setViewpath — Le but de setViewpath
