Les développeurs Web sont souvent confrontés aux problèmes liés aux dépendances. Beaucoup d’entre vous ont certainement été confronté à une situation où l’intégration de nouveaux paquets provoquent des problèmes. Composer va nous aider à régler cela facilement. Il s’agit d’un problème très fréquent que les développeurs Web rencontrent régulièrement. Il est fréquent qu’un programmeur construise des modules tels que la persistance des données à partir d’une base. Cependant, cette méthode gaspille énormément de ressources. C’est la raison pour laquelle Composer existe. Il s’agit d’un gestionnaire de dépendances simple pour PHP. Beaucoup d’entres vous sont certainement déjà familier avec certains gestionnaires de dépendance comme PIP pour Python ou NPM pour Node.js. Composer va vous permettre de centraliser toutes les dépendances en un seul endroit pour votre projet Web. L’un des points forts de Composer, comparé aux autres logiciels est sa capacité de gérer les dépendances par projet séparément. Cela permet d’éviter le gaspillage de ressources en ayant des bibliothèques non utilisées. Cependant, vous pouvez installer des packages à l’échelle du système. Ce tutoriel va vous apprendre à installer Composer mais aussi à l’utiliser dans vos projets PHP.
Installation de Composer
Premièrement, il faut installer Composer sur votre système. Il existe plusieurs méthodes d’installation de Composer pour un serveur VPS Linux et pour Windows. Si vous êtes utilisateur de Mac, ouvrez simplement votre terminal et suivez la même méthode que l’installation sous Linux.
1. Installation de Composer sur un serveur VPS
Il est possible d‘installer Composer sur un serveur VPS ou un hébergement Web disposant d’un accès SSH. Un script va permettre de télécharger et d’installer automatiquement la dernière version de Composer :
- Connectez-vous par le biais d’un accès SSH à votre serveur VPS.
- Créez un nouveau fichier en utilisant l’éditeur de texte « nano » et nommez-le « composer-installer.sh« .
nano composer-installer.sh
- La commande ouvrira le fichier « composer-installer.sh« . Collez la commande suivante à l’intérieur de ce fichier.
#!/bin/sh EXPECTED_SIGNATURE = $( wget -q -O - https://composer.github.io/installer.sig ) php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" ACTUAL_SIGNATURE = $( php -r "echo hash_file('SHA384', 'composer-setup.php');" ) if [ " $EXPECTED_SIGNATURE " ! = " $ACTUAL_SIGNATURE " ] then >&2 echo 'ERROR: Invalid installer signature' rm composer-setup.php exit 1 fi php composer-setup.php --quiet RESULT = $? rm composer-setup.php
- Ce script va permettre de télécharger la dernière version de Composer, va vérifier sa signature et procédera à l’installation si la signature est valide.
- Enregistrez les modifications et quittez l’éditeur de texte « nano » grâce à la commande « [CTRL] +X« , Y et appuyez sur la touche « entrée« .
- Exécutez maintenant le fichier que vous venez de créer en tapant la commande suivante:
sh composer-installer.sh
- Si l’installation s’est bien déroulée, vous ne verrez aucune erreur à l’écran. Afin de confirmer que l’installation à bien fonctionnez, entrez la commande suivante:
composer
Vous devriez avoir un résultat semblable à ceci :
______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer version 1.3.2 2017-01-27 18:23:41
Composer est bien installé.
Installation de Composer sur Linux ou Mac
Beaucoup de développeurs utilisent des systèmes d’exploitation Linux ou mac pour leurs projets Web. Le processus d’installation est presque similaire sur les deux OS. Il vous faudra exécuter les mêmes commandes sur le terminal afin d’obtenir Composer.
Installation locale :
Il ne s’agit pas de l’option la plus courante, mais il se peut que vous préfériez installer Composer de cette façon là.
- Ouvrez le terminal ou connectez-vous à votre serveur par le biais d’un accès SSH
- Exécuter les deux commandes suivantes:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
- La première commande va vous permettre de télécharger le programme d’installation de Composer en tant qu’archive, tandis que la deuxième commande va vérifier que le fichier ne contient pas d’erreur. Une fois les deux commandes éxécutées, installez Composer par le biais de la commande suivante :
php composer-setup.php --install-dir=bin --filename=composer
- Il est possible de modifier le répertoire d’installation de votre fichier à l’aide des paramètres « -install-dir » et « -filename« . Dans notre exemple, le répertoire est nommé « bin ». L’exécutable est installé sous le nom de composer.
- une fois Composer installé, il vous est possible de l’exécuter grâce à la commande suivante:
php bin/composer
Installation globale
Après avoir effectué votre installation locale, il est recommandé que Composer soit accessible de façon globale. Cela permet de garantir que Composer sera accessible de n’importe quel endroit sur votre système, quel que soit le chemin d’accès. Il faut pour cela, ajouter la variable PATH.
- Dans un premier temps, suivez les instruction fournies dans l’installation locale.
- Exécutez ensuite la commande:
sudo mv composer.phar /usr/local/bin/composer
- Il vous est maintenant possible de démarrer Composer indépendamment de votre chemin d’accès actuel.
- Afin d’exécuter Composer, exécutez la commande suivante:
composer
Installation de Composer sous Windows
Comme beaucoup de logiciels, l’installation de Composer est nettement plus simple sous Windows. Aucune commande n’est nécessaire, il vous suffit pour cela de télécharger et d’installer Composer en suivant les étapes suivantes :
- Télécharger la dernière version de composer en cliquant ICI.
- Dès le logiciel téléchargé, exécuter l’assistant et installez Composer sur votre ordinateur.
- Dès que l’installation de Composer est terminée, ouvrez l’invite de commandes. Afin de l’ouvrir, appuyez sur [CTRL] + R. tapez ensuite la commande « cmd » et appuyez sur « OK« .
- Dans l’invite de commande, tapez la commande suivante :
composer
Vous avez installé composer sur votre ordinateur Windows. L’installeur installera automatiquement Composer à votre variable PATH.
Génération et compréhension du fichier composer.json
Tout d’abord, voici la partie la plus intéressante de ce tutoriel. Il s’agit de la première utilisation de Composer pour votre projet PHP. Pour cela, il faut au préalable générer un fichier « composer.json » pour votre projet. Ce fichier est considéré comme une liste de recherche sur Composer. Cependant, grâce à ce fichier, Composer ne téléchargera que les paquets nécessaires à votre projet.
Ce fichier va aussi vérifier la compatibilité des versions de packages avec votre projet. Cela vous permettra d’être informé si le package utilisé est ancien afin d’éviter toute erreur sur votre projet. Il vous est possible de mettre à jour, à tout moment vos packets.
Utilité d’un fichier composer.json
Nous allons vous montrer l’utilité d’un fichier « composer.json » en créant un projet de test. Il s’agit d’un minuteur PHP simple, servant à trouver le temps d’exécution d’un morceau de code.
- Créez un nouveau répertoire pour votre projet. Nous allons nommé ce nouveau répertoire « minuteur« . Pour cela, ouvrez le terminal et tapez la commande suivante :
mkdir minuteur
- Entrez dans le répertoire que vous venez de créer.
cd minuteur
- Il vous faut maintenant un paquet ou une bibliothèque qui a implémenté un minuteur PHP. Pour cela, l’un des meilleurs endroits permettant de trouver des paquets Composer est Packagist (Site officiel de Composer). Dans ce tutoriel, il est nécessaire d’avoir un paquet de timer. Pour cela, il suffit de taper « timer » dans la barre de recherche :
- Un certain nombres de minuteur sont disponibles afin de développer votre site internet. Chaque paquet dispose d’un nom et d’une description. En face de chaque paquet, vous trouvez le nombre de téléchargements ainsi que le nombre d’étoiles donnés. Par conséquent, nous allons utilisé « phpunit/php-timer » qui dispose du plus grand nombre de téléchargement.
- Après avoir choisi le paquet à installer. Il suffit d’en faire la demande à Composer afin que ce dernier soit ajouter à votre projet. Pour cela, tapez la commande suivante:
composer require phpunit/php-timer
Une fois la commande exécutée, Composer va créer deux nouveaux fichiers (composer.json et composer.lock) dans votre répertoire en plus d’un nouveau dossier nommé « vendor« .
En effet, le répertoire « vendor » va permettre à Composer d’y stocker tous vos paquets et dépendances. Cela est très utile si vous décidez de changer de système sans être obligé de tout re-télécharger. Cependant, il est déconseillé de déplacer vous-même les fichiers car cela signifie aussi mettre à jour de façon manuelle Composer.
Utilisation de script d’écriture automatique
Dans le cas où vous êtes arrivé jusqu’ici, le reste de ce tutoriel devrait être relativement simple. Vous avez installé vos dépendances et votre projet est quasiment prêt.
Il vous faut maintenant charger toutes vos dépendances dans votre script PHP. En effet, cela peut être très long, sauf si vous utilisez le chargement automatique de Composer. Vous vous souvenez certainement que ces derniers se trouvent dans le répertoire « vendor« .
Afin d’effectuer le chargement de toutes les dépendances, écrivez la ligne suivante dans votre script:
require 'vendor/autoload.php'
Mise à jour des dépendances de votre projet
La dernière chose à savoir concerne la mise à jour des dépendances lorsque cela est nécessaire. Il est possible d’effectuer la mise à jour de deux manières:
Mise à jour universelle:
Afin de mettre à jour tous les paquets et dépendances à la fois, tapez la commande suivante dans votre terminal :
composer update
Mise à jour d’un paquet spécifique:
Parfois, il est simplement nécessaire de mettre à jour un ou plusieurs paquets spécifiques. Pour cela, exécutez la commande:
composer update fournisseur/paquet fournisseur2/paquet2
Conclusion
J’espère que ce tutoriel vous a plu et qu’il va vous permettre de créer votre premier projet PHP en utilisant Composer 👍
En effet, Composer est pratique afin de développer des projets Web, il permet de gagner énormément de temps lors du développement PHP de ce dernier. De plus, ce logiciel est open-source et s’intègre dans n’importe quel projet avec aisance.