« Programmation PHP/Composer » : différence entre les versions

Contenu supprimé Contenu ajouté
DannyS712 (discussion | contributions)
m <source> -> <syntaxhighlight> (phab:T237267)
Ligne 17 :
 
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 ==
Ligne 31 :
=== ''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.
Ligne 39 :
==== 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>
}}
 
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 :
<sourcesyntaxhighlight lang=bash>
php composer.phar update mediawiki/semantic-media-wiki --with-dependencies
</syntaxhighlight>
</source>
}}