Manuel:ContextSource.php

This page is a translated version of the page Manual:ContextSource.php and the translation is 100% complete.

ContextSource est une classe abstraite contenant des conteneurs d'objets dépendants des requêtes.

Elle implémente IContextSource.

Méthodes publiques

  • getContext()
  • setContext()
  • etc.

Etendu par

Notes

A partir d'une classe ContextSource, vous pouvez utiliser setContext () pour définir le contexte dans lequel se trouve votre classe. Par exemple, un constructeur qui a besoin d'un contexte peut s'écrire ainsi :

class SomeClass extends ContextSource {
  public function __constructor( IContextSource $context ) {
    $this->setContext( $context );
  }
}

Parce que nous ne pouvons pas encore utiliser traits[1] si votre classe doit être l'extension d'une autre classe vous devrez implements IContextSource et implémenter directement le squelette de votre assistant dans la classe.

A nouveau si vous ne pouvez pas étendre ContextSource vous devrez écrire directement le squelette de l'assistant dans votre classe. Malheureusement, comme nous ne pouvons pas utiliser les traits[1] pour permettre quelque chose comme :

class SomeClass extends SomeOtherClass implements IContextSource {
  use TContextSource;
  public function __constructor( IContextSource $context ) {
    $this->setContext( $context );
  }
}
  1. 1.0 1.1 Les traits sont apparus en PHP 5.4 et vous permettent de réduire les limitations de l'héritage simple de PHP en vous permettant de déclarer des méthodes (également abstraites) avec leur modificateur accessibilité (public, privé, protégé) utilisables dans plusieurs classes.