PHP Composer es el administrador de dependencias más utilizado para PHP. Te permite declarar las dependencias que necesita tu proyecto y las administrará (instalará/actualizará) por ti.
Descargar, instalar y actualizar las dependencias puede ser una molestia y puede distraerlo de la escritura del código. Un administrador de dependencias hará que su vida como desarrollador sea más fácil al manejar eso por usted.
Antes de que existiera Composer, había algunas opciones diferentes para administrar las dependencias del proyecto, como PEAR y PHP Package Manager. Hoy en día, Composer se ha convertido en el estándar de facto para la gestión de dependencias en PHP.
Si todavía usa PEAR o PHP Package Manager, entonces podría ser hora de un cambio. Hay varias razones para usar Composer:
- Está escrito en PHP y no requiere instalación de software adicional (como Python)
- Admite paquetes globales y locales/privados
- Miles de bibliotecas y aplicaciones ya confían en él, por lo que al usar Composer, podrá encontrar fácilmente paquetes y actualizaciones.
Requisitos
Para instalar PHP Composer en Rocky Linux 8.4, necesitará:
- Tenga PHP versión 5.3 o posterior instalada en su sistema (y debe poder ejecutar la extensión Phar).
- Se requiere acceso raíz para la instalación.
Actualizando el Sistema
Antes de hacer cualquier otra cosa, asegúrese de que los paquetes de su sistema estén actualizados. Ejecute los siguientes comandos para actualizar los paquetes del sistema.
sudo dnf check-update
sudo dnf update -y
Instalando PHP en Rocky Linux 8.4
Antes de poder instalar Composer, debe tener PHP y el intérprete de PHP instalados en su sistema.
De forma predeterminada, el repositorio de AppStream viene con PHP 7.2, 7.3 y 7.4. Puede enumerar todas las versiones de PHP disponibles ejecutando el siguiente comando.
sudo dnf module list php
Verá una salida como la siguiente.
En esta guía, instalaremos PHP 7.4. Debe elegir una versión de PHP que se adapte a sus necesidades, aunque asegúrese de basar su decisión no solo en esta guía, sino también en informes de compatibilidad como este.
Ejecute los siguientes comandos para habilitar e instalar PHP 7.4.
sudo dnf module enable php:7.4
sudo dnf install php php-cli php-gd php-curl php-zip -y
sudo dnf install php-mbstring php-opcache php-intl php-mysqlnd -y
Ahora puede verificar si PHP se instaló correctamente ejecutando este comando.
php -v
Deberías obtener el siguiente resultado.
Instalando PHP Composer en Rocky Linux 8.4
Ahora que tiene una versión de PHP instalada en su sistema, puede usarla para descargar e instalar el binario de Composer.
Primero, ejecute los siguientes comandos para descargar la última versión de Composer.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
A continuación, verificaremos que el archivo descargado no esté dañado. Siempre debemos verificar el archivo descargado para asegurarnos de que no esté dañado. Composer puede ser muy sensible y los errores pueden causar problemas con la forma en que usa Composer. Ejecute el siguiente código para verificar que el archivo del instalador no esté dañado.
HASH=`curl -sS https://composer.github.io/installer.sig`
echo $HASH
php -r "if (hash_file('SHA384', '/tmp/composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Debería ver el texto "Instalador verificado" cuando la verificación sea exitosa, como se muestra a continuación. Si no obtiene el resultado esperado, lo más probable es que el archivo esté dañado y debería intentar descargarlo de nuevo. Luego, repita el proceso de verificación hasta que obtenga el resultado esperado "Instalador verificado".
Ahora tiene dos opciones para instalar Composer en su sistema.
La opción 1 es instalar Composer globalmente en su sistema, lo que significa que será accesible desde cualquier directorio de su sistema y se podrá usar en cualquier lugar. Utilice esta opción si desea utilizar Composer como una herramienta de línea de comandos y no solo como un administrador de dependencias para sus proyectos PHP.
Si opta por esta opción, ejecute los siguientes comandos.
sudo php composer-installer.php --filename=composer --install-dir=/usr/local/bin
El comando anterior instalará Composer globalmente con el comando llamado composer en /usr/local/bin .
Ahora puede verificar si instaló Composer correctamente ejecutando este comando.
composer
Deberías obtener el siguiente resultado.
La opción 2 es instalar Composer localmente en el directorio actual para que solo lo use este proyecto específico.
Para instalar Composer localmente, ejecute los siguientes comandos.
sudo php composer-setup.php
El comando anterior instalará Composer localmente en el directorio actual para que solo lo use este proyecto específico. Puede usar el compositor ejecutando ./composer.phar
Probando PHP Composer
Ahora que ha instalado Composer, puede usarlo para crear un nuevo proyecto que puede probar su instalación de Composer.
Es una regla general que siempre debe crear un directorio separado para cada proyecto en el que trabaje. Ejecute los siguientes comandos para crear un nuevo directorio para su proyecto de prueba y navegue hasta el directorio recién creado.
cd && mkdir php-composer-test && cd php-composer-test
Ahora puede ejecutar el siguiente comando para inicializar un nuevo proyecto con Composer.
composer init
El comando anterior inicializará un nuevo proyecto con todos los detalles que haya seleccionado.
El comando composer init también crea un nuevo archivo composer.json en el directorio actual, como se muestra a continuación. Es un archivo en formato JSON que contiene todos los requisitos del proyecto. Composer usa este archivo para instalar las dependencias requeridas para su proyecto.
Ahora es el momento de cargar un paquete en su proyecto. Dirígete a https://packagist.org y busca un paquete para instalar en tu proyecto.
Por ejemplo, si desea instalar el paquete Eliminar palabras vacías, eso puede ayudarnos a eliminar las palabras vacías de una cadena. Si busca el término "Eliminar palabras vacías" en Packagist, debería ver el siguiente resultado.
Para agregar un nuevo paquete, ejecute el comando composer require y seleccione el paquete (sin ninguna versión) que desea cargar en su proyecto actual.
composer require rap2hpoutre/remove-stop-words
Composer decidirá automáticamente qué versión del paquete usar. Composer descargará el paquete de Packagist a su directorio actual y extraerá el contenido de este paquete.
También actualizará el archivo composer.json con detalles sobre este nuevo paquete. También creará un nuevo archivo, composer.lock, y un nuevo directorio de proveedores, como se muestra a continuación.
Composer utiliza el archivo composer.lock para bloquear la versión del paquete que está instalada en su proyecto actual. Este archivo se usa para evitar conflictos con otras instalaciones del mismo paquete, o cuando clona su proyecto. El directorio de proveedores contiene todas las dependencias de su proyecto.
Para actualizar las dependencias del proyecto, ejecute el comando de actualización del compositor. Composer buscará primero en el archivo composer.lock para averiguar qué versión del paquete ya está instalada y luego actualizará este paquete con la última versión disponible en Packagist.
composer update
Salida de muestra:
Para actualizar paquetes específicos, ejecute el siguiente comando.
composer update vendor/package
Para eliminar un paquete específico, ejecute el siguiente comando.
composer remove vendor/package
Por ejemplo, si ya no necesita el paquete Remove Stop Words, puede ejecutar el siguiente comando para desinstalarlo de su proyecto.
composer remove rap2hpoutre/remove-stop-words
Salida de muestra:
Nota :Se recomienda encarecidamente que no elimine el directorio del proveedor ni su contenido porque este directorio contiene todas las dependencias que deben instalarse con Composer para ejecutar su aplicación.
Conclusión
En este artículo, aprendió cómo instalar PHP Composer PHP dependency manager en Rocky Linux 8.4 para inicializar un nuevo proyecto, cargar nuevos paquetes, actualizar paquetes existentes o desinstalarlos de su proyecto. También ha aprendido algunos comandos básicos de Composer que se utilizan para administrar las dependencias de su proyecto.
Deje un comentario a continuación si tiene alguna pregunta o comentario.