Sommaire

Rappel sur les Servicesespaces de noms Espaces de noms

Nous savons que nous récupérons les classes des objets que nous manipulons grâce à leur espace de noms et à Composer.

Une classe est localisée par son espace de noms défini en amont de celle-ci (instruction use).

Par exemple, si on veut utiliser la classe User dans un contrôleur, il faut que cette classe soit définie par son espace de noms : App\Entity\User.

Nous savons que l’espace de noms est par défaut déterminé par le chemin vers la localisation physique de la classe. La classe User est dans le dossier src/Entity, par conséquent, son espace de noms est déclaré comme suit :

Classe User :

<?php 
namespace App\Entity; 
... 
class User implements UserInterface 
{ 
... 
}

À noter qu’on utilise l’alias App pour définir le dossier src. Cet espace de noms racine a été défini dans le fichier composer.json. Sous autoloadl’étiquette « autoload », on retrouve la définition de App :

 "autoload": { 
        "psr-4": { 
            "App\\": "src/" 
        } 
    },

Vous pouvez donner un autre nom, si vous le souhaitez, ou ajouter de nouveaux espaces de noms ...