Logo Composer

Composer le meilleur ami des dev PHP

Composer qu’est-ce que c’est ?

Et bien, si vous ne le connaissez pas, c’est un outil vraiment pas mal pour gérer les dépendances de vos projets. Avec lui, vous n’aurez plus à vous soucier de savoir si vous utilisez la dernière version d’une librairie sur votre projet.

L’avantage de Composer est qu’il est simple d’utilisation et qu’il vous facilitera grandement la vie pour configurer un environnement de développement. Si vous travaillez à plusieurs, il suffit de partager le fichier de configuration et d’exécuter une ligne de commande pour installer toutes les librairies !

L’installation de Composer sous Windows est très simple, on télécharge l’exécutable sur le site,  puis on le lance. Il n’y a pas besoin de modifier le PATH car ce sera fait automatiquement, vous pourrez donc lancer la commande depuis n’importe quel dossier.

Pour dire à Composer d’installer une librairie, il faut créer un fichier composer.json à la racine de votre projet. Voici la structure du fichier pour installer swiftmailer par exemple :

{
        "require": {
                "swiftmailer/swiftmailer": "4.3.*",
        },
        "config" : {
                "vendor-dir" : "libs"
        }
}

Dans require, nous renseignons le package que nous souhaitons installer  ainsi que la version.
Ce qui est intéressant avec Composer, c’est que vous pouvez gérer la version que vous souhaitez installer. Dans cet exemple, on installe swiftmailer avec cette condition pour la version :

>= 4.3 et < 4.4

Dans config, vendor-dir correspond au dossier où l’on souhaite installer swiftmailer, dans notre cas  le dossier libs.
Pour installer les librairies, rien de plus simple. Faite la commande suivante à la racine de votre projet :

php composer.phar install

Pour mettre à jour votre projet faite comme au-dessus mais avec cette commande :

php composer.phar update

Pour configurer Composer d’une manière plus poussée, je vous invite à aller sur le site officiel.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *