PSR 11 - Container Interface
Objectif du PSR 11
L’objectif du PSR 11 est de créer une interface commune pour les conteneurs d’injection de dépendances et de standardiser la façon dont les frameworks et les librairies l’utilisent. Le conteneur de dépendances est utilisé pour obtenir des objets en paramètre d’entrée d'une fonction.
L’implementor
dans ce cours doit être interprété comme quelque chose qui implémente le ContainerInterface
dans une librairie ou framework. Les utilisateurs de conteneur d’injection de dépendances (DIC) sont appelés “user”.
Identifiant d’entrée
Un identifiant d’entrée est une chaîne d’au moins 1 caractère qui identifie de manière unique un élément dans un conteneur. Un identifiant d’entrée est une chaîne opaque, donc les appelants ne devraient pas supposer que la structure de la chaîne porte une quelconque signification sémantique.
Lecture d’un conteneur
Le Psr\Container\ContainerInterface
expose 2 méthodes qui sont get
et has
.
get
prend un identifiant d’entrée en paramètre, qui doit être une chaîne de caractère, get
peut renvoyer n’importe quelle valeur ou lancer une NotFoundExeptionInterface
si l'identifiant connu du conteneur fait 2 appels successifs à get
avec le même identifiant, ce qui devrait retourner la même valeur. Cependant, selon l’implementor
conception et/ou la “user” configuration, des valeurs différentes peuvent être retournées, donc “user” ne doit pas compter sur l’obtention de la même valeur sur 2 appels successifs.
has
prend un identifiant d’entrée en paramètre, qui doit être une chaîne de caractère, has
retourne “true” si l'identifiant d’entrée est connu de conteneur ou alors has
renvoie “false” s’il ne l’est pas. Si has($id)
renvoie false alors get($id)
lance une NotFoundExceptionInterface
.
Besoin d'aide ?
Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !