Composer es un gestor de dependencias para PHP. En palabras simples nos va a permitir:
- Instalar librerías externas (como frameworks, bibliotecas o paquetes de otros desarrolladores).
- Administrar sus versiones (evitando conflictos entre proyectos).
- Autocargar clases automáticamente (sin necesidad de usar
requiremanualmente).
Si lo llevamos a sistemas operativos, digamos que tener un gestor de paquetes como apt o dnf pero pensando en el mundo de php :).
¿Para qué se usa?
- Instalar frameworks como Laravel, Symfony, etc.
- Usar librerías populares (por ejemplo, PHPUnit para pruebas o Guzzle para HTTP).
- Evitar reinventar la rueda: Si alguien ya resolvió un problema (como enviar emails o conectar a una API), podemos usar su paquete.
Ejemplo práctico: Usar Composer
1. Instalación
Descarga Composer desde getcomposer.org o ejecuta en terminal:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
2. Crear un proyecto y usar paquetes
Crea un archivo composer.json (manualmente o con el comando):
composer init
Ejemplo de composer.json para instalar Guzzle (cliente HTTP):
{
"require": {
"guzzlehttp/guzzle": "^7.0"
}
}
Instala las dependencias:
composer install
Esto descargará Guuzzle en la carpeta vendor/.
3. Usar el paquete en tu código PHP
Crea un archivo index.php:
<?php
require 'vendor/autoload.php'; // Autocarga de Composer
use GuzzleHttp\Client;
$client = new Client();
$response = $client->get('https://api.github.com/users/octocat');
echo $response->getBody();
Al incluir vendor/autoload.php, Composer se encarga de cargar automáticamente las clases necesarias.
Comandos útiles
composer require [paquete]: Añade una dependencia (ej: composer require monolog/monolog).
composer update: Actualiza los paquetes según composer.json.
composer dump-autoload: Regenera el autocargador si añades clases manualmente.
¿Por qué es importante?
- Organización: Evita incluir código externo manualmente.
- Control de versiones: Puedes especificar versiones exactas (ej:
"^7.0"significa «7.x pero no 8.0»). - Ecosistema PHP: Casi todos los proyectos modernos de PHP usan Composer.
Ejemplo real: Laravel usa Composer para instalar sus componentes y extensions como Laravel Debugbar.







Deja un comentario