Composer est un gestionnaire de dépendances pour PHP. Il permet de gérer facilement les bibliothèques et packages nécessaires à un projet PHP, en s’assurant que les versions et les dépendances sont compatibles.
Installation de Composer
Étapes pour installer Composer :
- Télécharger Composer :
- Rendez-vous sur le site officiel : getcomposer.org.
- Téléchargez et exécutez le script d’installation.
- Installer via terminal (Windows, Mac ou Linux) :
- Linux/MacOS :
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php composer-setup.php php -r "unlink('composer-setup.php');" sudo mv composer.phar /usr/local/bin/composer
- Windows :
- Téléchargez et exécutez l’installateur Windows depuis le site officiel.
- Assurez-vous que l’option « Ajouter à la variable PATH » est activée.
- Linux/MacOS :
- Vérification de l’installation :
- Tapez dans le terminal :
composer --version
- Si vous voyez une version s’afficher, Composer est bien installé.
- Tapez dans le terminal :
Utilisation de Composer
Initialiser un projet avec Composer
- Allez dans le répertoire du projet et lancez la commande :
composer init
Cela vous demandera des informations sur votre projet (nom, description, dépendances, etc.).
Ajouter des dépendances
- Utilisez
composer require
pour installer une bibliothèque. Par exemple, pour installer monolog :composer require monolog/monolog
Composer mettra à jour un fichier
composer.json
et créera un fichiercomposer.lock
pour verrouiller les versions.
Mettre à jour les dépendances
- Pour mettre à jour les dépendances vers leurs versions compatibles les plus récentes :
composer update
Charger automatiquement les classes (Autoloading)
- Composer génère automatiquement un fichier
autoload.php
. Vous pouvez inclure ce fichier dans votre projet pour charger toutes les classes définies dans vos dépendances :require 'vendor/autoload.php';
Supprimer une dépendance
- Supprimez une dépendance avec :
composer remove vendor/package-name
Structure d’un projet avec Composer
Une fois Composer configuré, voici la structure typique d’un projet PHP :
my_project/
├── composer.json # Décrit les dépendances du projet
├── composer.lock # Version verrouillée des dépendances
├── vendor/ # Contient les bibliothèques installées
│ ├── autoload.php # Chargeur automatique
│ └── vendor-name/ # Bibliothèques spécifiques
└── src/ # Votre code source
Intérêt de Composer
Gestion simplifiée des dépendances
Composer facilite l’installation, la mise à jour et la suppression de bibliothèques tierces. Par exemple :
- Installer rapidement des frameworks comme Laravel ou Symfony.
- Ajouter des outils comme PHPUnit pour les tests.
Compatibilité assurée
Composer vérifie les versions des bibliothèques pour éviter les conflits entre dépendances.
Autoloading
Avec le fichier autoload.php
, vous n’avez pas besoin de gérer manuellement les inclusions (require
ou include
), même pour les bibliothèques complexes.
Réutilisation du code
Composer vous donne accès à des milliers de packages PHP disponibles sur Packagist, le dépôt officiel.
Amélioration de la collaboration
Dans un projet en équipe, le fichier composer.json
permet à tous les développeurs de travailler avec les mêmes dépendances, facilitant ainsi la cohérence.
Commandes Composer utiles
Commande | Description |
---|---|
composer install |
Installe les dépendances à partir de composer.lock . |
composer update |
Met à jour les dépendances vers les dernières versions compatibles. |
composer dump-autoload |
Regénère le fichier d’autoload. |
composer show |
Liste toutes les dépendances installées. |
composer require |
Ajoute une nouvelle dépendance. |
composer remove |
Supprime une dépendance. |
Composer est un outil indispensable pour les développeurs PHP modernes, garantissant une gestion efficace des dépendances et une organisation optimale du code.