PSR-4 Autoloading standard
La PSR-4 (Autoloading) és l'estàndard clau que defineix un mètode consistent perquè els autoloader de PHP localitzin i carreguin fitxers de classe basant-se en el seu Namespace. Resoldre el problema d'haver d'utilitzar require o include repetidament, fent que el codi sigui net i promovent una arquitectura de directoris lògica.
Principi fonamental: mapeig de Namespace a ruta
La regla central de la PSR-4 és establir un mapeig un a un entre el prefix del Namespace i una ruta de directori base.
| Element | Descripció | Exemple en el teu Projecte |
| Prefijo del Namespace | La part inicial del namespace que identifica el teu codi. | App\ |
| Directori Base | La ruta física al servidor on resideix aquest prefix. | mvc_class/App/ |
| Nom Relatiu de Classe | La resta del namespace i el nom de la classe. | Controllers\Ctl_users |
| Ruta del Fitxer | La concatenació de la ruta base, el nom relatiu i l'extensió .php. |
mvc_class/App/Controllers/Ctl_users.php |
Com funciona?
Quan el teu codi sol·licita una classe:
-
Sol·licitud: El codi intenta instanciar
new App\Controllers\Ctl_users(). -
Transformació: L'Autoloader (implementant PSR-4) elimina el prefix (
App\) i converteix la resta (Controllers\Ctl_users) en la ruta relativa del fitxer, reemplaçant les barres invertides (\) per separadors de directori i afegint.php. -
Càrrega: L'autoloader busca i carrega el fitxer resultant (
App/Controllers/Ctl_users.php), fent la classe disponible per al codi.
La PSR-4 obliga a què els namespaces i l'estructura de fitxers coincideixin, garantint que el teu codi sigui universalment compatible amb eines i gestors de dependències com Composer.