Skip to main content

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:

  1. Sol·licitud: El codi intenta instanciar new App\Controllers\Ctl_users().

  2. 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.

  3. 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.