


Quelles sont les différentes stratégies de mise à jour (PSR-0, PSR-4, ClassMap, Fichiers)?
Jun 20, 2025 am 12:08 AMLes méthodes de chargement automatiques de PHP incluent PSR-0, PSR-4, ClassMap et les fichiers. L'objectif principal est d'implémenter le chargement automatique des classes sans introduire manuellement des fichiers. 1. PSR-0 est une norme précoce, et se charge automatiquement via les noms de classe et la cartographie du chemin de fichier, mais parce que les spécifications de dénomination sont strictes et la prise en charge des soulignements est rarement utilisée comme séparateurs de répertoire; 2. PSR-4 est une norme moderne, qui adopte un espace de noms et une méthode de cartographie de répertoire plus concis, permettant à un espace de noms de correspondre à plusieurs répertoires et ne prend pas en charge la séparation de soulignement, devenant le choix grand public; 3. CLASSMAP génère une table de mappage statique des noms et des chemins de classe en scannant le répertoire spécifié, qui convient au code hérité qui ne suit pas la spécification PSR, mais les nouveaux fichiers doivent être régénérés et sont moins efficaces pour les grands répertoires; 4. La méthode des fichiers contient directement des fichiers spécifiés, qui sont souvent utilisés pour la fonction globale ou le chargement constant, mais une utilisation excessive affectera la gestion des performances et des dépendances. Dans le développement réel, le PSR-4 doit être préféré et les situations spéciales doivent être gérées en combinaison avec d'autres méthodes.
Lorsque vous travaillez avec des projets PHP, en particulier ceux qui utilisent le compositeur, vous rencontrerez différentes stratégies de mise à jour comme PSR-0, PSR-4, ClassMap et Fichiers. Chacun a son propre cas d'utilisation et savoir quand utiliser qui peut vous faire gagner du temps et éviter la confusion.
Quel est l'intérêt de ces méthodes de mise à jour?
Ils servent tous un objectif principal: aider votre application à charger automatiquement les classes sans inclure manuellement chaque fichier. Mais ils le font de différentes manières - certains reposent sur les conventions de dénomination, d'autres scannent des fichiers ou incluent tout simplement à l'avance.
PSR-0: l'ancienne norme
Le PSR-0 a été la première norme de mise à jour largement adoptée. Il définit un mappage entre les noms de classe et les chemins de fichier. Par exemple, une classe nommée Vendor\Package\ClassName
mapperait à Vendor/Package/ClassName.php
.
Il est assez strict à propos de l'espace de noms et de la mise en forme du nom de classe. De plus, les soulignements dans les noms de classe avaient une signification particulière (comme les séparateurs de répertoires), ce qui rendait les choses déroutantes parfois.
Vous ne le voyez plus beaucoup utilisé car le PSR-4 est plus simple et plus flexible.
PSR-4: la manière moderne
Le PSR-4 est la norme actuelle et ce que la plupart des nouveaux projets PHP utilisent. Comme PSR-0, il mappe des espaces de noms vers les répertoires, mais il laisse en charge les soulignements en tant que séparateurs d'annuaire et est généralement plus propre.
Par exemple, si vous définissez:
"psr-4": { "App \\": "src /" }
Ensuite, une classe App\Controller\HomeController
doit être trouvée sur src/Controller/HomeController.php
.
Quelques points clés:
- Il permet plusieurs répertoires par espace de noms
- Vous pouvez définir plusieurs mappages d'espace de noms
- Beaucoup plus facile à travailler que PSR-0
Cette stratégie fonctionne bien lorsque votre code suit des modèles cohérents d'espace de noms et de structure de dossiers.
CLASSMAP: analyse de force brute
ClassMap Autoloading fonctionne en numérisant les répertoires spécifiés pour les fichiers PHP et en créant une carte des noms de classe aux chemins de fichier.
Vous pouvez l'utiliser lorsque vous traitez un code hérité qui ne suit pas les normes PSR, ou lorsque vous avez un mélange de code ancien et nouveau.
Dans composer.json
, il ressemble:
"classMap": ["Legacy /", "Database / Migrations /"]
Le compositeur analyse tous les fichiers .php
dans ces dossiers et construit une table de recherche statique. Cela rend la mise en ?uvre automatique d'une fois construite, mais il y a un co?t:
- Le vidage initial peut prendre plus de temps
- Si vous ajoutez un nouveau fichier, vous devez redumper
composer dump
- Pas idéal pour les grands répertoires avec de nombreux fichiers
Utile lorsque vous ne pouvez pas modifier le code pour ajuster PSR-4.
Fichiers: il suffit de les inclure tous
L'autoader "Fichiers" comprend simplement des fichiers spécifiques à chaque fois. Pas de recherche de classe, pas de numérisation - charge simplement les scripts que vous spécifiez.
Généralement utilisé pour des fonctions ou des constantes qui ne sont liées à aucune classe:
"fichiers": ["wheatrs.php", "fonctions / général.php"]
Cette méthode garantit que ces fonctions d'assistance sont toujours disponibles. Mais la surutiliser peut ralentir les performances et rendre les dépendances en désordre.
La meilleure pratique est donc:
- Gardez-le minimum
- Utilisation uniquement pour les fonctions globales / logique automatiquement
- Ne l'utilisez pas comme substitut à un chargement de classe approprié
Selon votre configuration de projet et votre style de base de code, vous pouvez utiliser une ou une combinaison de ces méthodes. Le PSR-4 est généralement le choix incontournable, sauf si vous avez affaire à un code plus ancien. ClassMap aide lorsque la structure n'est pas prévisible et que les fichiers sont parfaits pour les scripts utilitaires.
Fondamentalement, c'est tout.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Application et promotion des spécifications PSR2 et PSR4 dans le microframework Lumen Introduction : Avec l'application et le développement généralisés du langage PHP, les spécifications de code sont devenues un aspect important pour maintenir la qualité et la lisibilité du code. PHPFIG (PHPFIG, PHPFrameworkInteropGroup) a créé une série de spécifications de bonnes pratiques (PSR, PHPStandardsRecommendations) sur le développement PHP, parmi lesquelles PSR2 et PSR

Promotion et pratique des spécifications PSR2 et PSR4 dans le développement de CodeIgniter Introduction : Dans le processus de développement de CodeIgniter, le respect des spécifications de codage est un aspect important. Parmi elles, les spécifications PSR2 et PSR4 sont des normes largement adoptées dans la communauté PHP, contribuant à unifier les styles de codage et à améliorer l'efficacité de la collaboration en équipe. Cet article présentera comment promouvoir et mettre en pratique ces deux spécifications dans le projet CodeIgniter, et fournira des exemples de code spécifiques. 1. Quelles sont les spécifications PSR2 et PSR4 PSR2

Outil de vérification des spécifications de code basé sur les spécifications PHP PSR-2 et PSR-4 : implémentation et exemples Introduction : Dans le processus de développement logiciel, de bonnes spécifications de code sont un facteur important pour garantir la qualité et la maintenabilité du programme. Afin d'aider les développeurs à suivre les spécifications du code PHP, PHP-FIG (PHPFrameworkInteropGroup) a proposé la série de spécifications PSR (PHPStandardsRecommendations). Parmi eux, le PSR-2 définit principalement

Application et promotion des spécifications PSR2 et PSR4 dans le framework Fat-Free Avec le développement continu du langage PHP et l'expansion de son champ d'application, de nombreux développeurs se rendent compte que l'écriture de code standardisé est d'une grande importance pour la maintenance à long terme du projet. et la collaboration en équipe. à cette fin, PHPFIG (PHP Developers Interest Group) a développé une série de spécifications de codage, notamment les spécifications PSR2 et PSR4. Cet article se concentrera sur l'application et la promotion de ces deux spécifications dans le framework Fat-Free, et donnera des exemples de code correspondants. d'abord

Dans la le?on précédente sur Nettuts+, vous avez découvert le PSR, cependant, l'article n'a pas détaillé le processus d'intégration de ce style de codage dans votre projet ; Résolvons ce problème?! REMARQUE?: Cet article suppose que vous avez lu PSR-Huh?? et que vous comprenez à quoi fait référence PSR. Commen?ons par le premier standard : PSR-0. PSR-0 - Le plugin PHPCS Autoload Standard est l'outil le plus utile que j'ai jamais utilisé. Dans le passé, nous incluions les fichiers PHP de deux manières?: en utilisant de nombreuses instructions d'inclusion en haut de chaque fichier. Répertoriez toutes les inclusions dans un seul fichier et incluez ce fichier unique dans votre projet. Il y a des avantages et des inconvénients dans les deux approches, cependant, je pense que nous pouvons tous convenir que ni l'une ni l'autre n'est la meilleure solution ou la plus moderne.

L'impact des spécifications PHPPSR2 et PSR4 sur la qualité du code nécessite des exemples de code spécifiques Introduction : Dans le processus de développement logiciel, les individus et les équipes espèrent écrire du code de haute qualité. PHPPSR (PHPStandard Recommendation) 2 et PSR4 sont deux spécifications lancées par la communauté PHP. Elles peuvent non seulement améliorer la lisibilité et la maintenabilité du code, mais également fournir des spécifications de codage cohérentes dans la collaboration en équipe. Cet article présentera PSR2 et PSR4

Le processus de gestion et de publication des versions de projets PHP conformes aux spécifications PSR2 et PSR4 nécessite des exemples de code spécifiques Introduction?: Dans le processus de développement de projets PHP, c'est une bonne habitude de se conformer aux normes de codage. Parmi elles, la spécification PSR2 proposée par l'organisation PHP-FIG constitue la base de base de la spécification de codage PHP, tandis que la spécification PSR4 concerne le chargement automatique. Cet article expliquera comment se conformer aux spécifications PSR2 et PSR4 dans les projets PHP et donnera des exemples de code correspondants. 1. Spécification PSR2 La spécification PSR2 explique comment

Etude préliminaire des spécifications PHPPSR2 et PSR4 Introduction : Dans le processus d'écriture de code PHP, il est très important de suivre certaines spécifications de codage. De bonnes normes de codage peuvent améliorer la lisibilité et la maintenabilité du code et faciliter le travail d’équipe. PHP possède une série de spécifications de codage, parmi lesquelles PSR2 et PSR4 sont les deux spécifications les plus utilisées. Cet article se concentrera sur les spécifications PSR2 et PSR4 et illustrera comment suivre ces spécifications à travers des exemples de code spécifiques. 1. Spécification PSR2 La spécification PSR2 se concentre principalement sur le code PHP.
