Introducción

Composer és un gestor de dependències per a PHP que permet declarar les biblioteques de què depèn el teu projecte i les gestionarà en un directori dins del teu projecte.

composer.json

El fitxer composer.json descriu les dependències i altres metadades.

{
    "require": {
        "monolog/monolog": "2.0.*"
    }
}

Mitjançant require pots especificar de quins paquets depèn el teu projecte, i composer utilitzarà aquesta informació per cercar el conjunt adequat de fitxers a Packagist.org o als "repositoris" de paquets que registris mitjançant repositories.

El nom del paquet consisteix en un nom de proveïdor i el nom del projecte. Sovint són idèntics: el nom del proveïdor només existeix per evitar xocs de noms. Per exemple, permet a dues persones diferents crear una biblioteca anomenada json. Un es pot anomenar david/json i l'altre daw/json.

composer

Per instal·lar inicialment les dependències definides al projecte, has d'executar l'ordre update.

$ composer update

Això farà que Composer faci dues coses:

  • Resol totes les dependències llistades al fitxer composer.json i escriu tots els paquets i les seves versions exactes al fitxer composer.lock, bloquejant el projecte a aquestes versions específiques.

  • Llavors executa de manera implícitament l'ordre install. Això descarregarà els fitxers de les dependències al directori vendor del teu projecte. En el nostre exemple de dalt, acabareu amb els fitxers font de Monolog a vendor/monolog/monolog. Com que Monolog té una dependèn de psr/log, els fitxers d'aquest paquet també els podreu trobar al vendor/.

require

$ composer require predis/predis