Comment le compositeur fonctionne-t-il avec Laravel?
Le compositeur est l'épine dorsale de la gestion des dépendances à Laravel, gérant l'installation, la mise à jour et la mise à jour des bibliothèques requises. 1. Il installe Laravel et ses dépendances via Composer.json, tels que les composants Symfony et les packages tiers comme Laravel Sanctum ou Spatie's Packages. 2. Les fichiers clés incluent Composer.json, qui répertorie les dépendances, les paramètres AutolOAD et les scripts, et Composer.lock, qui assure des versions de package cohérentes dans les environnements. 3. Après le clonage d'un projet, Running Composer Installer installe des versions exactes à partir de Composer.LOCK, tandis que le composer mettant à jour les packages de mise à niveau basés sur Composer.json. 4. Laravel exploite le PSR-4 du compositeur pour charger automatiquement les classes sous l'espace de noms App \, et l'exécution du dépôt de compositeur Autoload rafraîchit l'autoloader lorsque de nouvelles classes sont ajoutées. 5. Le package automatique utilise le crochet post-Autoload-Dump du compositeur pour enregistrer automatiquement les fournisseurs de services et les façades, éliminant l'enregistrement manuel - par exemple, l'installation de Spatie / Laravel-Permission auto-registre son fournisseur de services. 6. Composer exécute des scripts spécifiques à Laravel comme PHP Artisan Package: Découvrez après les mises à jour de dépendance pour assurer une intégration appropriée du package. 7. Les commandes communes incluent l'installation du compositeur, le compositeur nécessite d'ajouter des packages, la mise à jour du compositeur, le compositeur de désinstaller et le député compositeur autoadad pour régénérer l'autofacteur. Le compositeur garantit que les applications de Laravel maintiennent des dépendances cohérentes, auto-adées et correctement intégrées tout au long du développement.
Le compositeur est l'épine dorsale de la gestion des dépendances à Laravel, et comprendre comment il fonctionne est la clé pour construire et maintenir efficacement les applications Laravel.

Ce que fait le compositeur à Laravel
Composer est un gestionnaire de dépendances PHP qui gère l'installation, la mise à jour et la mise à jour des bibliothèques dont dépend le projet Laravel. Lorsque vous créez ou travaillez sur une application Laravel, compositeur:
- Installe Laravel lui-même (via
laravel/installer
oucreate-project
) - Télécharge tous les packages requis répertoriés dans
composer.json
(comme Symfony Components, FlySystem, Guzzle, etc.) - Gère les forfaits tiers que vous ajoutez (par exemple, Laravel Sanctum, Laravel Sail ou Spatie's Packages)
- Génère un autoloader afin que vous puissiez utiliser des classes sans inclure manuellement
Par exemple, lorsque vous courez:

Composer Create-Project Laravel / Laravel My-App
Composer récupère la dernière version de Laravel et toutes ses dépendances basées sur le fichier composer.json
défini par Laravel.
Fichiers clés impliqués
Deux fichiers principaux contrôlent comment le compositeur fonctionne dans Laravel:

composer.json
: répertorie les dépendances de votre projet, les paramètres AutolOAD, les scripts et les métadonnées.-
require
: Packages de base nécessaires pour exécuter Laravel (par exemple,illuminate/support
,laravel/framework
) -
require-dev
: outils de développement comme Phpunit, Laravel Pint ou Faker -
autoload
: explique le compositeur comment charger vos classes d'application (en particulierApp\
Namespace)
-
composer.lock
: Un instantané des versions exactes installées. Cela garantit que tout le monde dans votre équipe utilise les mêmes versions de package.
Après avoir cloné un projet Laravel, vous courez toujours:
Installation du compositeur
Cela lit composer.lock
et installe les versions exactes. Utilisez composer update
uniquement lorsque vous souhaitez mettre à jour des packages vers des versions plus récentes par composer.json
.
Comment Laravel utilise les fonctionnalités du compositeur
Autonais de votre code
Laravel utilise le PSR-4 du compositeur pour cartographier l'espace de nomsApp\
Names à l'app/
répertoire. Si vous créez une nouvelle classe sousapp/Models
, le compositeur le rend automatiquement disponible partout:"Autoload": { "psr-4": { "App \\": "app /" } }
Après avoir ajouté de nouveaux répertoires, exécutez:
compositeur Dump-Autoload
… Pour actualiser l'autoloader sans réinstaller des forfaits.
Discovery des fournisseurs de services (package de découverte automatique)
Laravel utilise le crochetpost-autoload-dump
du compositeur pour scanner des packages pourlaravel
supplémentaire dans leurcomposer.json
. Cela permet la découverte automatique des prestataires de services et des façades. Par exemple, lorsque vous installez:Le compositeur a besoin de Spatie / Laravel-Permission
Laravel enregistre automatiquement le fournisseur de services - aucune étape manuelle nécessaire.
Scripts en cours d'exécution
Le compositeur peut déclencher des scripts spécifiques à Laravel après l'installation / mise à jour. Par exemple:"scripts": { "Post-Autoload-Dump": [ "Illuminate \\ Foundation \\ Composerscripts :: PostAutoloAddump", "Package d'artisan @php: découverte --ansi" ]] }
Cela exécute
php artisan package:discover
chaque fois que vous mettez à jour les dépendances, vous assurant que les packages sont correctement enregistrés.Commandes de compositeurs communs à Laravel
Voici les commandes de compositeur les plus utilisées lorsque vous travaillez avec Laravel:
-
composer install
- Installer les dépendances decomposer.lock
-
composer require vendor/package
- Ajoutez un nouvel paquet (par exemple,composer require guzzlehttp/guzzle
) -
composer update
- Mettez à jour tous les packages vers les dernières versions autorisées parcomposer.json
-
composer remove vendor/package
- Désinstaller un package -
composer dump-autoload
- Regenerate the Autoloader (utile après les classes de déménagement / de renommée)
Fondamentalement, le compositeur maintient Laravel en marche en gérant ce dont votre application a besoin, comment elle charge le code et comment les packages s'intègrent. Vous n'avez pas besoin de le toucher profondément tous les jours, mais savoir comment il se lie à Laravel aide à déboguer les problèmes et à ajouter correctement les packages.
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 grâce à 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)

CheckPhpinstallationByrunningPhp-VincommandPromptandensurePhpisinPath.2.DownloadTheComposer-Settup.exeinstallerfromgetcomposer.org, Runit, suivithewizard, andallowystem-wideinstallation.3

Utilisez la commande ComposerRemove pour désinstaller des packages dans des projets PHP. Cette commande supprime le package spécifié du composer.json exiger ou require-Dev et ajuste automatiquement les dépendances. 1. Exécutez ComposerreMoveVeVendor / Package pour supprimer de l'exigence; 2. Utilisez le paramètre --DEV pour supprimer de l'exigence-DEV; 3. Composer mettra à jour automatiquement les dépendances et reconstruisa le chargeur automatique; 4. Vous pouvez exécuter Composerinstall et vérifier le fournisseur / répertoire pour assurer un nettoyage approfondi; 5. Enfin, soumettre les modifications de contrôle de version pour enregistrer la modification.

La commande ComposerClearCache est utilisée pour effacer les données cachettes locales pour résoudre le problème de la dépendance ou de la dépendance des versions de package. Sa fonction principale est de supprimer les métadonnées du package stocké, les archives de téléchargement et les informations de clonage GIT. 1. Cela n'affectera pas le répertoire du fournisseur ou le fichier composer.lock; 2. Effacer sélectivement les types de cache spécifiques tels que les fichiers de package, les métadonnées du référentiel, les clones VCS; 3. L'emplacement du cache varie d'un système à l'autre et est situé dans ~ / .composer / cache dans Linux / MacOS ou AppData \ Local \ Composer pour Windows; 4. Si vous utilisez Docker ou Homestead, vous devez confirmer s'il est exécuté dans l'environnement correct; 5

Composer.json est un fichier de configuration de base requis pour l'utilisation de Composer dans des projets PHP, qui est utilisé pour définir les dépendances, les versions, le chargement automatique et d'autres paramètres. Il définit les informations et les exigences du projet via des champs clés tels que le nom, la description, l'exigence, le requis-DEV, l'autoload et les scripts, et peuvent être générés via Composerinit ou créés manuellement ou mis à jour automatiquement via des commandes de compositeurs telles que ComposerRequire. Ce fichier garantit que les membres de l'équipe utilisent des bibliothèques et des versions cohérentes, prend en charge les mécanismes de chargement automatique, simplifie la gestion des dépendances et le partage de projets, et est la pierre angulaire de la construction de projets PHP maintenables et déployables.

Oui, vous pouvez vous faire en sorte

Le compositeur auditCommandChecksforSecurityVulnerAbilitySInPhprojectDependces a été

RunComposerDump-Autoload-OwenpenSloyingtOproductionTooptimeAutoloAdingPerformanceByEneratingaClassMapAndavoidingPsr-4Directorylookups.2.UseitOptionallyafteriNstallingNewPackageSifPreparingaproduction-READYBUIL

Utilisez la commande ComposersHow pour répertorier tous les packages installés. Les méthodes spécifiques sont les suivantes: 1. Exécutez des compositeurs pour afficher toutes les dépendances du projet et leurs versions et descriptions; 2. Utilisez des compositeurs de composition - installer pour répertorier uniquement les packages installés; 3. Ajoutez le paramètre --name uniquement pour obtenir une liste concise des noms et versions de packages; 4. Utiliser - format = table pour afficher les noms, versions et descriptions des packages dans une table; 5. Ajouter le drapeau - Global à répertorier les packages installés à l'échelle mondiale; 6. Vous pouvez enregistrer la sortie dans un fichier en combinaison avec la redirection, comme les compositeurs - installer> installé-PA
