Espaces de nommage
Les fichiers PHP du site font un usage général des espaces de nommage (namespaces ). Ces espaces servent à isoler les classes, les fonctions ou les variables globales, mais aussi à structurer les fichiers dans la documentation produite. Surtout, ils permettent d'exploiter l'inclusion automatique des fichiers fournie par Composer , en particulier son implémentation du standard PSR-4 qui décrit comment charger automatiquement une classe.
Cette fonctionnalité est configurée dans le fichier composer.json
, à la racine du projet.
"autoload": {
"psr-4": {
"Noo\\": "noo/"
}
},
Elle est exploitée en écrivant en tête de chaque contrôleur du site l'expression suivante (le chemin peut varier selon la profondeur du fichier).
require __DIR__ . '/vendor/autoload.php';
Cette configuration permet par exemple de charger le composant \Noo\Composants\Pagination
ou l'interface à la base de données Noo\Base\Cyborg\Livres
sans avoir besoin d'inclure spécifiquement aucun autre fichier.