Différences entre les versions de « Programmation PHP/Composer »

m
<source> -> <syntaxhighlight> (phab:T237267)
m (<source> -> <syntaxhighlight> (phab:T237267))
 
Pour l'installer à partir du téléchargement :
<sourcesyntaxhighlight lang=bash>
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
</syntaxhighlight>
</source>
 
Enfin, pour tester l'installation, lancer :
<sourcesyntaxhighlight lang=bash>
composer -v
</syntaxhighlight>
</source>
 
== Utilisation ==
=== ''require'' ===
Pour installer un paquet, par exemple client client HTTP Guzzle :
<sourcesyntaxhighlight lang=bash>
composer guzzlehttp/guzzle
</syntaxhighlight>
</source>
 
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.
==== Paramètres ====
On peut aussi préciser le numéro de version, par exemple MediaWiki :
<sourcesyntaxhighlight lang=bash>
composer require mediawiki/semantic-media-wiki "1.9.*,>=1.9.0.1"
</syntaxhighlight>
</source>
 
On peut aussi installer plusieurs paquets à la suite :
<sourcesyntaxhighlight lang=bash>
composer require symfony/framework-bundle symfony/console
</syntaxhighlight>
</source>
 
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 :
<sourcesyntaxhighlight lang=bash>
composer require --dev phpunit/phpunit ^8
</syntaxhighlight>
</source>
 
=== ''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 :
<sourcesyntaxhighlight lang=bash>
composer install
</syntaxhighlight>
</source>
 
{{attention|clear=left|
Si plusieurs versions de PHP sont installées, il faut préciser laquelle exécute ''composer'' ainsi :
<sourcesyntaxhighlight lang=bash>
/usr/bin/php7.2 /usr/local/bin/composer install
</syntaxhighlight>
</source>
}}
 
{{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 :
<sourcesyntaxhighlight lang=bash>
php composer.phar update mediawiki/semantic-media-wiki --with-dependencies
</syntaxhighlight>
</source>
}}
 
1 535

modifications