« Programmation PHP/Composer » : différence entre les versions
Contenu supprimé Contenu ajouté
m <source> -> <syntaxhighlight> (phab:T237267) |
|||
Ligne 17 :
Pour l'installer à partir du téléchargement :
<
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
</syntaxhighlight>
Enfin, pour tester l'installation, lancer :
<
composer -v
</syntaxhighlight>
== Utilisation ==
Ligne 31 :
=== ''require'' ===
Pour installer un paquet, par exemple client client HTTP Guzzle :
<
composer guzzlehttp/guzzle
</syntaxhighlight>
Si l'installation réussit, il ajoute le nom et la version du paquet dans ''composer.json'', ceux de ses dépendances dans ''composer.lock'', et télécharge leurs fichiers dans un dossier "vendors". Il informe ensuite des problèmes de dépendances, par exemple si la version de PHP locale est inférieure à celle recommandée pour le paquet. En cas d'erreur il retire tout ce qu'il a fait.
Ligne 39 :
==== Paramètres ====
On peut aussi préciser le numéro de version, par exemple MediaWiki :
<
composer require mediawiki/semantic-media-wiki "1.9.*,>=1.9.0.1"
</syntaxhighlight>
On peut aussi installer plusieurs paquets à la suite :
<
composer require symfony/framework-bundle symfony/console
</syntaxhighlight>
Pour éviter de télécharger une bibliothèque destinée au développement en environnement de production, l'ajouter en mode "dev", puis lancer <code>composer install</code> en développement, et <code>composer install --no-dev</code> en production :
<
composer require --dev phpunit/phpunit ^8
</syntaxhighlight>
=== ''install'' ===
Généralement quand on clone un projet git existant contenant un ''composer.json'', il suffit ensuite pour le faire fonctionner, d'installer ses dépendances ainsi :
<
composer install
</syntaxhighlight>
{{attention|clear=left|
Si plusieurs versions de PHP sont installées, il faut préciser laquelle exécute ''composer'' ainsi :
<
/usr/bin/php7.2 /usr/local/bin/composer install
</syntaxhighlight>
}}
Ligne 69 :
{{attention|clear=left|
Ne jamais lancer de <code>composer update</code> sur un projet existant, sous peine de devoir tout retester. En effet, mieux vaut ne mettre à jour qu'une seule bibliothèque en précisant son nom :
<
php composer.phar update mediawiki/semantic-media-wiki --with-dependencies
</syntaxhighlight>
}}
|