Primeros pasos con «Composer»

Composer PHPEn 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.



¿Te gusta este post? Es solo un ejemplo de cómo podemos ayudar a tu empresa...
Sobre Daniel Rendon Arias

Hola, soy Daniel. Un gran amigo de PHP.

1 Comentario

¿Por qué no comentas tú también?

Queremos tu opinión :)