Composer
Cosa e Composer
Sezione intitolata “Cosa e Composer”Composer è il gestore di dipendenze più usato in PHP. Una dipendenza è una libreria esterna che il progetto usa senza doverla riscrivere da zero.
Per esempio, invece di scrivere una libreria per inviare email, puoi installarne una già pronta.
composer.json
Sezione intitolata “composer.json”Il file composer.json descrive il progetto e le librerie richieste.
Puoi crearne uno con:
composer initPer iniziare puoi anche installare direttamente un pacchetto.
composer require monolog/monologComposer aggiorna composer.json e scarica il codice nella cartella vendor.
Installare dipendenze
Sezione intitolata “Installare dipendenze”Se scarichi un progetto che contiene già composer.json, esegui:
composer installComposer legge anche composer.lock, se presente, e installa le versioni previste.
Autoload
Sezione intitolata “Autoload”Composer crea un file di autoload per caricare classi e librerie.
<?phprequire __DIR__ . '/vendor/autoload.php';Dopo questa riga puoi usare le librerie installate nel progetto.
Aggiornare con cautela
Sezione intitolata “Aggiornare con cautela”Per aggiornare le librerie:
composer updateQuesto comando può cambiare le versioni. Nei progetti reali va usato con attenzione e seguito da test.
Regola pratica
Sezione intitolata “Regola pratica”composer requireaggiunge una libreriacomposer installinstalla cio che il progetto richiedecomposer updateaggiorna le versioni consentite
Composer diventa utile quando il progetto supera il singolo file e inizia a usare librerie esterne.
composer.lock
Sezione intitolata “composer.lock”Quando installi dipendenze, Composer crea spesso anche composer.lock. Questo file registra le versioni esatte installate.
Il suo scopo è semplice: se un’altra persona installa il progetto, riceve le stesse versioni delle librerie. Così si evitano differenze difficili da capire.
Cartella vendor
Sezione intitolata “Cartella vendor”La cartella vendor contiene il codice scaricato da Composer. Di solito non va modificata a mano.
In molti progetti vendor non viene salvata in Git. Si salva invece composer.json e composer.lock, poi ogni persona esegue:
composer installUsare una libreria installata
Sezione intitolata “Usare una libreria installata”Dopo l’autoload, puoi usare classi fornite dai pacchetti.
<?phprequire __DIR__ . '/vendor/autoload.php';
// Qui puoi usare le librerie installate con ComposerOgni libreria ha la propria documentazione, ma nel progetto PHP il punto di ingresso resta quasi sempre vendor/autoload.php.
Regola pratica
Sezione intitolata “Regola pratica”Non installare una libreria per ogni piccola cosa. Prima capisci il problema, poi scegli una libreria se ti evita lavoro complesso o delicato.