Composer és un gestor de paquets per al llenguatge de programació PHP que proporciona un format estàndard per gestionar les dependències de programari les biblioteques requerides escrits en PHP. Va ser desenvolupat per Nils Adermann i Jordi Boggiano, que continuen gestionant el projecte. Va començar a desenvolupar-se l'abril de 2011 i es va publicar per primera vegada el primer de març de 2012.Software release, github.com, Retrieved April 24, 2016. Composer està molt inspirat en els gestors de dependències npm de Node.js i bundler del llenguatge de programació Ruby.Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013. L'algorisme de resolució de dependències de Composer va iniciar-se com una traducció a PHP del libzypp d'OpenSUSE, basat en un algorisme de solució de SAT.

Composer s'executa des de la línia de comandes i instal·la dependències (p. ex. biblioteques, libraries en anglès) per a una aplicació. També permet als usuaris instal·lar aplicacions de PHP estan disponibles a "Packagist", que és l'arxiu més gros de paquets.Vegeu packagist.org També proporciona capacitats d'autoload per a biblioteques que han especificat com s'han d'autocarregar per fer més fàcil l'ús de codi de tercers.

Sintaxi Composer disposa de diversos paràmetres, entre els quals:

require: afegeix la biblioteca al paràmetre require al fitxer composer.json i l'instal·la. install: instal·la totes les biblioteques que hi ha al composer.json. És la comanda que s'utilitza per descarregar totes les dependències de PHP establertes en el fitxer. update: actualitza totes les biblioteques del composer.json, d'acord amb les versions permeses que s'indiquen en el fitxer. remove: desinstal·la una biblioteca i l'elimina del composer.json.

Definició de biblioteques Exemple de composer.json generat per la comanda següent: composer require monolog/monolog { "require": { "monolog/monolog": "1.2.*"

Versions La manera d'indicar quines versions d'una biblioteca estan autoritzades és la següent: Símbol Rol (ubicat abans d'un número de versió) Exemple >= permet actualitzar a una versió posterior. A més, es pot fer servir: >, <, <=. "php": ">=5.5.9" inclou PHP 7. != exclou una versió. - defineix interval de versions. ¦¦ afegir possibles versions. "symfony/symfony": "2.8 ¦¦ 3.0" permet només aquestes dues versions. * s'estén a totes les subversions. "symfony/symfony": "3.1.*" inclou el 3.1.1. ~ s'estén a les següents versions del mateix nivell. "doctrine/orm": "~2.5" també es refereix al 2.6, però ni al 2.4 ni al 3.0. ^ igual que l'anterior, només si hi ha una retrocompatibilitat.

Frameworks que el fan servir Symfony versió 2 i posteriors Laravel versió 4 i posteriors CodeIgniter versió 3.0 i posterior CakePHP versió 3.0 i posterior FuelPHP versió 2.0 i posterior Drupal versió 8 i posterior TYPO3 versió 6.2 i posteriors SilverStripe versió 3.0 posterior Magento versió 2.0 posterior Yii versió 1.1 i posterior Zend Framework versió 1 i posteriors Silex Lumen

Referències

Categoria:Programari lliure escrit en PHP Categoria:Gestors de paquets lliures