En la mayoría de los lenguajes de programación hay soluciones para la gestión de dependencias en código abierto, con el fin de compartir funcionalidades que se usan habitualmente en la mayoría de proyectos y no tener que escribirlas cada vez desde 0 y, posiblemente en cada ocasión, de una forma diferente.
En el caso de PHP, Composer es un fantástico gestor de dependencias. Actualmente se usa no solo para la instalación de módulos, sino también para la instalación de frameworks modernos (Zend, Symfony, Laravel…) o la creación de proyectos.
Instalación y actualización de Composer
Para instalar y actualizar Composer en entornos Unix|Linux, es suficiente con ejecutar las siguientes líneas desde la terminal:
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer chmod +x /usr/local/bin/composer
composer self-update
Para la instalación en otros entornos, consultar la web oficial de Composer.
Módulos que se pueden Instalar
Los módulos que se pueden instalar por Composer, principalmente tienen que estar registrados en la web de Packagist, donde se vinculan a proyectos guardados en GitHub. También se pueden instalar módulos externos a GitHub o en directorios locales.
Uso básico de Composer
Para la instalación de módulos con Composer, hay 3 formas básicas:
- Mediante el comando “composer require” se pueden buscar e instalar módulos al instante;
- Con el mismo comando “composer require”, pero al final se le agrega el nombre del módulo que se va instalar, quedando tal que así “composer require monolog/monolog”;
- Por último, con el fichero composer.json y el comando “composer install”.
{ "require": { "monolog/monolog": "^1.18" } }
De esta forma, se le indica a Composer qué módulo se quiere instalar y qué versión de este. Por último, se ejecuta “composer install”.
Una vez instalados los módulos, ¡solo queda usarlos! Para esto, en el index.php de nuestra aplicación (o donde se inicie lo que vamos a ejecutar) se incluye el autoload.php de Composer:
require_once'{pathComposer}/vendor/autoload.php';
Y con esto, ya se puede llamar a los namespaces identificativos de los módulos instalados, para ser usados.
<?php use Monolog\Logger; use Monolog\Handler\StreamHandler; // create a log channel $log = new Logger('name'); $log->pushHandler(new StreamHandler('/path/to/your.log', Logger::WARNING)); // add records to the log $log->addWarning('Foo'); $log->addError('Bar');
Aparte del control de versiones en los módulos que instalamos, Composer también se puede usar para crear esqueletos de aplicaciones, con una serie de dependencias ya especificadas y una estructura de archivos predefinida. También se pueden declarar archivos ejecutables del tipo bin, para herramientas de consola como «phing».
Si estás pensando en crear una mini-aplicación, recuerda que puedes encontrar muchos módulos que ya ha creado la comunidad de PHP y los ha compartido en Packagist, para que no tengas que reinventar la rueda una y otra vez.
1 Comentario
¿Por qué no comentas tú también?
Excelente Blog y articulo, se ganaron un nuevo lector por aquí.
cartuchos e insumos Hace 8 años
[…] anteriores entradas se ha hablado sobre qué es GitLab y qué es Composer. En esta ocasión vamos a combinar estas dos herramientas para la gestión e instalación de […]
Combinando GitLab y Composer en nuestros proyectos | Blog Irontec Hace 8 años
[…] que necesitamos para nuestro entorno es composer, como ya explicó nuestro compañero Dani en “Primeros pasos con Composer”, es el gestor de paquete que utilizamos en php, y daremos por echo que ya lo tenemos instalado […]
Primeros pasos con TDD – Parte 1 | Blog Irontec Hace 8 años
Queremos tu opinión :)