Introducción
Compositor es una aplicación para el seguimiento de las dependencias de un proyecto. Obtiene todos los paquetes PHP necesarios de los que depende su proyecto y los administra por usted.
En lugar de reemplazar los administradores de paquetes del sistema (como apt o mmm ), Composer le permite especificar un conjunto de bibliotecas para un proyecto específico. Con las bibliotecas establecidas, Composer luego identifica las versiones y dependencias y las instala en el proyecto correspondiente.
En este artículo, aprenda cómo instalar y usar Composer en CentOS 7.
Requisitos previos
- Un sistema CentOS Linux
- PHP 5.3.2 o posterior instalado
- Una cuenta de usuario con sudo privilegios
- Acceso a una línea de comando/ventana de terminal (Ctrl +Alt +
F2 )
Pasos para instalar PHP Composer en CentOS 7
Paso 1:actualizar el repositorio local
Antes de descargar e instalar cualquier cosa en su sistema, asegúrese siempre de actualizar el repositorio local:
sudo yum -y update
Paso 2:Instalar dependencias de software
Comience con la instalación del software de soporte. Escribe el siguiente comando en la terminal:
yum install php-cli php-zip wget unzip
Si ya tiene las dependencias requeridas, asegúrese de que sean la última versión del paquete.
Paso 3:Descarga el script de instalación de Composer
A continuación, deberá descargar el script del instalador. El siguiente comando descarga el archivo en el directorio en el que se encuentra actualmente.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Paso 4:Verificar la integridad de la descarga
Una vez que tenga el script de instalación, deberá verificar su integridad.
Para hacerlo, debe verificar si el hash SHA-384 coincide con la firma del instalador (SHA-384) que se encuentra en la página oficial de claves públicas de Composer.
Descarga la firma autorizada de la página Github de Composer en la variable HASH:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
Luego, use la siguiente secuencia de comandos para comparar el hash oficial con el que ha descargado:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Si las dos firmas coinciden, el resultado muestra el mensaje:Instalador verificado .
Por otro lado, si el script detecta algunas diferencias, muestra:Instalador corrupto . Para resolver este problema, deberá volver a descargar el instalador de Composer.
Paso 5:Instalar Composer
Después de verificar la integridad del archivo, puede continuar con la instalación de Composer.
Deberá instalar Composer en /usr/local/bin directorio, como un comando accesible desde todo el sistema.
1. Para instalar Composer, use el comando:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Una vez inicializada la instalación, aparecerá el siguiente mensaje:
All settings correct for using Composer
Downloading...
Composer (version 1.6.5) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
2. Cuando el instalador complete el proceso, compruebe si se está ejecutando correctamente:
composer
El sistema debería mostrar la versión en ejecución, junto con su sintaxis y opciones disponibles:
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.9.0 2019-08-28 11:45:23
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
3. Finalmente, elimine el instalador:
php -r “unlink(‘composer-setup.php’);”
Uso básico del compositor
Composer ayuda a realizar un seguimiento de las dependencias por proyecto, lo que permite a otros usuarios crear fácilmente un entorno idéntico. Realiza un seguimiento del software requerido y las versiones permitidas mediante el uso de un composer.json archivo.
Además, mantiene la coherencia si alguien copia el directorio a través de composer.lock archivos, que se generan automáticamente mediante require
comando.
Ahora, veamos cómo utilizar Composer al iniciar un nuevo proyecto PHP.
1. Abra una terminal y cree un directorio raíz del proyecto para un archivo con la descripción del proyecto, sus dependencias y otra información adicional (el composer.json archivo):
mkdir c_sample
2. Luego, muévalo al nuevo directorio:
cd c_sample
3. El siguiente paso es cargar un paquete. El sitio web packagist.org tiene una amplia gama de diferentes paquetes de PHP para elegir.
En este ejemplo, descargaremos y usaremos el monolog/monolog paquete para nuestro proyecto. La información después de la barra inclinada es el nombre del paquete , mientras que el nombre antes de la barra inclinada es el proveedor .
Junto con la descarga del software, su sistema creará automáticamente el composer.json archivo y el composer.lock archivo con el comando:
composer require monolog/monolog
4. Ahora, compruebe si se crearon todos los archivos enumerando el contenido del directorio:
ls -l
Entre el contenido, debería ver composer.json y compositor.lock archivos, así como un proveedor directorio.
5. A continuación, abra composer.json archivo:
cat composer.json
Debería ver que el software de monolog recién agregado tiene un quilate (^ ) firmar junto al número de versión, indicando la versión mínima del software.
Cómo configurar la carga automática
Puede simplificar el trabajo con dependencias configurando Composer para carga automática clases por ti (ya que PHP no hace esto automáticamente).
1. Con el editor de texto de su preferencia, cree un nuevo archivo (en este ejemplo, estará bajo el nombre composer_sample
):
vi composer_sample.php
2. Agregue lo siguiente al archivo:
<?php
require __DIR__ . '/vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
// create a log channel
$log = new Logger('name');
$log->pushHandler(new StreamHandler('/~/c_sample/text.log', Logger::WARNING));
// add records to the log
$log->warning('Foo');
$log->error('Bar');
3. Guardar y salir .
4. Con esto, puede usar el siguiente comando para cargar automáticamente el monolog :
php composer_sample.php
Actualizar dependencias
Si necesita actualizar todas las dependencias en su composer.json archivo con el que puede hacerlo:
composer update
Este comando actualiza las dependencias según la versión especificada en el archivo.
También puede actualizar una (o más) dependencias individualmente:
composer update vendor/package vendor_b/package_b