Iniciando con Composer

Share on FacebookShare on LinkedInTweet about this on TwitterShare on Google+Email this to someone
Composer es un manejador de dependencias de PHP, similar a NPM en node.js y a los bundles de Ruby. a https://getcomposer.org/ Composer es una de las mejores herramientas disponibles para el desarrollo en PHP hoy en día. Para instalarlo ingresamos en la consola (Terminal) en Mac y si tenemos la libreria curl instalada colocamos: Si no se tiene la librería curl se puede instalar de la siguiente forma Si ejecutamos el comando composer obtendremos los siguiente: Composer    
Nos ubicamos en la carpeta donde se quiera empezar nuestro proyecto creamos un archivo llamado composer.json. Dentro de este archivo vamos a especificar todos los elementos necesarios. Este archivo tendra los siguientes elementos:
  • require: esta palabra simplemente le dice a Composer que necesitamos la libreria que le indicamos dentro de los corchetes {}
  • Nombre del paquete o libreria: está separado en dos partes vendedor/proyecto, normalmente estos dos son iguales como en este caso o pueden ser distintos por ejemplo “illuminate/foundation”.
  • Versiones del paquete: después de los dos puntos ( : ) indicamos la versión que queremos de este paquete. Tenemos varias opciones:
    • Versión exacta: podemos decirle a Composer que queremos una versión específica como por ejemplo 1.0.1.
    • Rango: Podemos definir rangos de versiones con los operadores >, >=, <, <=, !=. Por ejemplo si queremos una versión mayor a la 2 colocariamos >2. También podemos definir entre dos versiones separando con comas, por ejemplo >=1.0, <2.0.
    • Comodín: podemos usar el comodín ( o wildcard ) * para definir versiones, como ejemplo 1.0.* esto quiere decir cualquier versión dentro de 1.0 ( 1.0.1, 1.0.2 … 1.0.8 etc.)
    • Por último tenemos el operador ~, es un poco dificil de explicar así que usaremos un ejemplo: tenemos una librería que tiene la versión 1.x y 2.x pero no son compatibles entre ellas y queremos la última de 1.x y no la de 2.x entonces utilizaríamos el operador de esta forma ~1.2 que es equivalente a >=1.2, <2.0, mientras si vamos a algo más específico como ~1.3.1 es equivalente a >=1.3.1, <1.4
Un archivo composer.json seria como el siguiente: Para ilustrarlo un poco más facil. Vamos a crear un proyecto en php que permita hacer crop sobre unas imagenes que tenemos guardadas. Lo primero que deberíamos hacer seria buscar en el repositorio de paquetes alguna libreria para manipular imagenes, en la pagina https://packagist.org/ encontramos el paquete de zebra https://packagist.org/packages/nyholm/zebra-image. Creamos nuestro archivo json de la siguiente manera En la consola ubicándonos en la carpeta colocamos Esto descargara y generara todos los archivos necesario para nuestro proyecto composer install

Si realizamos algun cambio en nuestro archivo composer.json ejecutamos la siguiente instruccion para actualizar

En nuestro proyecto creamos una carpeta public y dentro de ella colocamos una imagen y un archivo index.php. composer proyecto En nuestro archivo index.php colocamos lo siguiente La primera linea hace referencia al autoloader con lo cual se cargaran las librerias referenciadas. Con esto ya lo unico que resta es usar y ejecutar las tarea que convierte nuestra imagen en una mas pequeña. Para nuestra propias librerias/clases es importante tener en cuenta que con psr-4 podemos definir la carpeta donde tenemos nuestra librerias para que se pueda cargar y usar sin requerir de importarla. Si tuvieramos una carpeta llamada clases, en nuestro archivo composer.json lo modificamos de la siguiente manera Donde App\\ hace referencia al namespace usado y clases/ la carpeta. Generalmente estos dos son iguales. Luego para cargar esto ejecutamos en la consola (en nuestro proyecto) Al ejecutar esto en consola, ya quedara nuestra carpeta referenciada y todas las clases que están dentro del namespace las podremos usar en nuestro proyecto

Etiquetas:, , ,

"Trackback" Enlace desde tu web.