Yaf_Config_Simple::valid
Yaf_Controller_Abstract::__clone
Yaf
PHP Manual

# la classe Yaf_Controller_Abstract

(Yaf >=1.0.0)

## 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 la méthode Yaf_Action_Abstract::execute()).

> Note:

> Ces arguments sont directement récupérés sans filtrage ; il serait plus prudent de les analyser avant de les utiliser.

## Synopsis de la classe

abstract Yaf_Controller_Abstract {
/* Propriétés */
public $actions ;
protected $_module ;
protected $_name ;
protected $_request ;
protected $_response ;
protected $_invoke_args ;
protected $_view ;
/* Méthodes */
final private void __clone ( void )
final private __construct ( void )
protected bool display ( string `$tpl` [, array `$parameters` ] )
public void forward ( string `$action` [, array `$paramters` ] )
public void getInvokeArg ( string `$name` )
public void getInvokeArgs ( void )
public string getModuleName ( void )
public Yaf_Request_Abstract getRequest ( void )
public Yaf_Response_Abstract getResponse ( void )
public Yaf_View_Interface getView ( void )
public void getViewpath ( void )
public void init ( void )
public void initView ([ array `$options` ] )
public bool redirect ( string `$url` )
protected string render ( string `$tpl` [, array `$parameters` ] )
public void setViewpath ( string `$view_directory` )
}

## 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) {
  /* $name et $id sont des données brûtes non sécurisées */
  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

  Nom du contrôleur

_request

  L'objet de la requête courante

_response

  L'objet de la réponse courante

_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 — Transfère vers une autre action
- Yaf_Controller_Abstract::getInvokeArg — Le but de getInvokeArg
- Yaf_Controller_Abstract::getInvokeArgs — Le but de getInvokeArgs
- Yaf_Controller_Abstract::getModuleName — Récupère le nom du module
- Yaf_Controller_Abstract::getRequest — Récupère l'objet de la demande courante
- Yaf_Controller_Abstract::getResponse — Récupère l'objet de la réponse courante
- Yaf_Controller_Abstract::getView — Récupère le moteur de visualisation
- Yaf_Controller_Abstract::getViewpath — Le but de getViewpath
- Yaf_Controller_Abstract::init — Initialisation du contrôleur
- Yaf_Controller_Abstract::initView — Le but de initView
- Yaf_Controller_Abstract::redirect — Redirige vers une URL
- Yaf_Controller_Abstract::render — Affiche le rendu du template
- Yaf_Controller_Abstract::setViewpath — Le but de setViewpath

Yaf_Config_Simple::valid
Yaf_Controller_Abstract::__clone
Yaf
PHP Manual