Dopo aver introdotto composer e mostrato la sua installazione, nel precedente articolo, in questo nuovo articolo si mostrerà l’utilizzo del binomio composer – packagist.
Packagist è un repository di librerie di codice php e grazie a composer sarà possibile scaricare automaticamente da packagist le librerie necessarie al progetto e gestirne le dipendenze e gli aggiornamenti in maniera molto agevole.
Si supponga di voler installare la libreria phprtflite, una libreria presente nel repository di packagist (https://packagist.org/), ecco i passi da seguire:
- Accedere mediante browser al repository https://packagist.org/
- Nella casella di ricerca in alto digitare il nome del pacchetto che si desidera installare, in questo caso digitare phprtflite
- Cliccare sul link che viene proposto tra i risultati della ricerca
La pagina che si aprirà, vedi immagine seguente, mostra in alto il comando da usare con composer, in questo caso:
composer require phprtflite/phprtflite
Digitare il suddetto comando all’interno della cartella che ospiterà il progetto e premere invio, automaticamente composer provvederà al download dell’ultima versione stabile del pacchetto e di tutte le dipendenze all’interno di una cartella di nome vendor.
Quando il comando sarà terminato, nella cartella del progetto avremo la situazione seguente:
- sarà presente un nuovo file composer.json
- sarà presente un nuovo file composer.lock
- sarà presente una nuova cartella vendor con tutti i pacchetti scaricati
- all’interno della cartella vendor sarà presente il file autoload.php
Esempio file composer.json generato:
{
"require": { "phprtflite/phprtflite": "^1.3" }
}
Per utilizzare la libreria nel progetto occorre includerla nei file del codice come segue:
<?php
require_once __DIR__ . '/vendor/autoload.php'
........altro codice presente
?>
Dopo aver aggiunto una libreria, si potrebbe volerne aggiungere delle altre, ebbene non bisogna fare altro che ripetere il comando
composer require nomelibreria/nomelibreria
ed il file composer.json sarà così aggiornato:
{
"require": {
"phprtflite/phprtflite": "^1.3",
"nomelibreria/nomelibreria": "^1.13"
}
}
Quando in futuro si avrà bisogno di aggiornare i pacchetti installati sarà sufficiente digitare:
composer update
con questo comando composer provvederà a scaricare i pacchetti aggiornati e le dipendenze necessarie.
Per rimuovere un pacchetto, precedentemente installato, è sufficiente usare il comando seguente:
composer remove nomepacchetto/nomepacchetto
Ciao Francesco
grazie per il tuo post. Sono nuova nell’uso del composer e non ho capito bene cosa intendi con “Digitare il suddetto comando all’interno della cartella che ospiterà il progetto e premere invio”.
Grazie ancora
Ciao, intendo che una volta dentro la cartella che ospita il progetto, che stai realizzando, il comando:
composer require nomelibreria/nomelibreria provvede ad installare il pacchetto/libreria che vuoi usare e tutte gli altri che rappresentano un prerequisito affinché il pacchetto/libreria funzioni (le cosiddette dipendenze)
A questo punto tu potrai usare tutte le funzionalità offerte dalla libreria (istanziare le sue classi ed usare i suoi metodi) senza preoccuparti di niente.