informatica:programacion:php:composer
Tabla de Contenidos
Composer
Gestor de dependencias para PHP.
Instalación
Tras la instalación, el ejecutable se ubica en:
- Linux:
$HOME/.config/composer/vendor/bino$HOME/.composer/vendor/bin - Windows:
%USERPROFILE%\AppData\Roaming\Composer\vendor\bin
Uso
composer.json
El fichero composer.json se usa para configurar un proyecto. En él se definen las dependencias del proyecto y alguna información extra sobre el mismo.
Para generar un fichero composer.json básico:
composer init
{ "name": "tempwin/foo" "description": "Descripción de foo", "type": "project", "license": "MIT", "authors": [ { "name": "TempWin", "email": "tempwin@gmail.com" } ], "minimum-stability": "dev", "require": { "phpmailer/phpmailer": "5.2.2" } }
A la hora de indicar la versión de las dependencias, se sigue el siguiente esquema:
1.2.3: versión exacta>=1.0: rango>=1.0 <2.0>=1.0 <1.1 || >=1.2
1.0.*: comodín.^1.2.3: es lo mismo que>=1.2.3 <2.0.0
Composer generará además un fichero vendor/autoload.php para que lo incluyamos en nuestro proyecto y empezar a usar ya las bibliotecas despreocupándonos de hacerlo todo nosotros. Bastará con incluir la siguiente línea en nuestro script:
require 'vendor/autoload.php';
Ejemplo de fichero PHP:
//Import PHPMailer classes into the global namespace //These must be at the top of your script, not inside a function use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\SMTP; use PHPMailer\PHPMailer\Exception; //Load Composer's autoloader require 'vendor/autoload.php'; //Create an instance; passing `true` enables exceptions $mail = new PHPMailer(true);
composer create-project laravel/laravel:^8.0 example-app
informatica/programacion/php/composer.txt · Última modificación: por tempwin
