PSR 11 - Container Interface

1 h Niveau 7

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.

logo discord

Besoin d'aide ?

Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !

En savoir plus