Introduzione
Compositore è un'applicazione per tenere traccia delle dipendenze di un progetto. Raccoglie tutti i pacchetti PHP richiesti da cui dipende il tuo progetto e li gestisce per te.
Invece di sostituire i gestori dei pacchetti di sistema (come apt o ehm ), Composer consente di specificare un insieme di librerie per un progetto specifico. Una volta stabilite le librerie, Composer identifica quindi le versioni e le dipendenze e le installa nel progetto corrispondente.
In questo articolo, scopri come installare e utilizzare Composer su CentOS 7.
Prerequisiti
- Un sistema CentOS Linux
- PHP 5.3.2 o successivo installato
- Un account utente con sudo privilegi
- Accesso a una riga di comando/finestra del terminale (Ctrl +Alt +F2 )
Passaggi per l'installazione di PHP Composer su CentOS 7
Fase 1:aggiorna il repository locale
Prima di scaricare e installare qualsiasi cosa sul tuo sistema, assicurati di aggiornare sempre il repository locale:
sudo yum -y update
Fase 2:installa le dipendenze software
Inizia con l'installazione del software di supporto. Digita il seguente comando nel terminale:
yum install php-cli php-zip wget unzip
Se disponi già delle dipendenze richieste, assicurati che siano l'ultima versione del pacchetto.
Passaggio 3:scarica lo script di installazione di Composer
Successivamente, dovrai scaricare lo script di installazione. Il comando seguente scarica il file nella directory in cui ti trovi attualmente.
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
Fase 4:verifica l'integrità del download
Una volta che hai lo script di installazione, dovrai verificarne l'integrità.
Per fare ciò, è necessario verificare se l'hash SHA-384 corrisponde alla firma dell'installatore (SHA-384) che si trova nella pagina ufficiale delle chiavi pubbliche del compositore.
Scarica la firma autorizzata dalla pagina Github di Composer nella variabile HASH:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
Quindi, utilizza il seguente script per confrontare l'hash ufficiale con quello che hai scaricato:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Se le due firme corrispondono, l'output mostra il messaggio:Installatore verificato .
Se invece lo script rileva alcune differenze, viene visualizzato:Programma di installazione danneggiato . Per risolvere questo problema, dovrai scaricare nuovamente il programma di installazione di Composer.
Passaggio 5:installa Composer
Dopo aver verificato l'integrità del file, puoi passare all'installazione di Composer.
Ti consigliamo di installare Composer in /usr/local/bin directory, come comando accessibile da tutto il sistema.
1. Per installare il compositore, utilizzare il comando:
php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Una volta che l'installazione è stata inizializzata, apparirà il seguente messaggio:
All settings correct for using Composer
Downloading...
Composer (version 1.6.5) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
2. Quando il programma di installazione completa il processo, controlla se funziona correttamente:
composer
Il sistema dovrebbe visualizzare la versione in esecuzione, insieme alla sua sintassi e alle opzioni disponibili:
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.9.0 2019-08-28 11:45:23
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
3. Infine, elimina il programma di installazione:
php -r “unlink(‘composer-setup.php’);”
Utilizzo di base del compositore
Composer aiuta a tenere traccia delle dipendenze in base al progetto, consentendo ad altri utenti di creare facilmente un ambiente identico. Tiene traccia del software richiesto e delle versioni consentite utilizzando un composer.json file.
Inoltre, mantiene la coerenza se qualcuno copia la directory tramite composer.lock file, che vengono generati automaticamente utilizzando il require
comando.
Ora, vediamo come utilizzare Composer quando si avvia un nuovo progetto PHP.
1. Apri un terminale e crea una directory principale del progetto per un file con la descrizione del progetto, le sue dipendenze e altre informazioni aggiuntive (il composer.json file):
mkdir c_sample
2. Quindi, spostalo nella nuova directory:
cd c_sample
3. Il passaggio successivo è il caricamento di un pacchetto. Il sito web packagist.org ha una vasta gamma di diversi pacchetti PHP tra cui scegliere.
In questo esempio, scaricheremo e utilizzeremo il monolog/monolog pacchetto per il nostro progetto. L'informazione dopo la barra è il nome del pacchetto , mentre il nome prima della barra è il fornitore .
Oltre a scaricare il software, il tuo sistema creerà automaticamente composer.json e il file composer.lock file con il comando:
composer require monolog/monolog
4. Ora controlla se tutti i file sono stati creati elencando il contenuto della directory:
ls -l
Tra i contenuti, dovresti vedere composer.json e compositore.lock file, nonché un fornitore directory.
5. Quindi, apri composer.json file:
cat composer.json
Dovresti vedere che il software monolog appena aggiunto ha un carat (^ ) firmare accanto al numero di versione, indicando la versione minima del software.
Come impostare il caricamento automatico
Puoi semplificare il lavoro con le dipendenze configurando Composer per il caricamento automatico classi per te (poiché PHP non lo fa automaticamente).
1. Con l'editor di testo di tua preferenza, crea un nuovo file (in questo esempio sarà sotto il nome composer_sample
):
vi composer_sample.php
2. Aggiungi quanto segue nel file:
<?php
require __DIR__ . '/vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
// create a log channel
$log = new Logger('name');
$log->pushHandler(new StreamHandler('/~/c_sample/text.log', Logger::WARNING));
// add records to the log
$log->warning('Foo');
$log->error('Bar');
3. Salva e esci .
4. Con questo, puoi usare il seguente comando per caricare automaticamente il monolog :
php composer_sample.php
Aggiorna le dipendenze
Se devi aggiornare tutte le dipendenze nel tuo composer.json file puoi farlo con:
composer update
Questo comando aggiorna le dipendenze in base alla versione specificata nel file.
Puoi anche aggiornare una (o più) dipendenze singolarmente:
composer update vendor/package vendor_b/package_b