Cum se instalează și se utilizează PHP Composer pe Ubuntu 20.04 LTS

Compuneți cu ușurință proiectul dvs. PHP, permițând compozitorului să gestioneze toate dependențele

Composer este un instrument de gestionare a dependențelor pentru PHP. Diferă de managerul de pachete tradițional, cum ar fi apt și dnf, într-un mod astfel încât să nu instaleze pachetele și bibliotecile la nivel global la nivel de sistem, ci să le gestioneze pentru fiecare proiect separat. Astfel, este un manager de dependențe și nu un manager de pachete.

La fel cum un compozitor de muzică ia o grămadă de instrumente și le aranjează pentru a funcționa impecabil într-un concert, Composer for PHP preia o grămadă de biblioteci și cadre, le împachetează pentru a lucra împreună și creează o bază solidă pe care poate fi un proiect PHP. compusă.

Cerințe preliminare

Aveți nevoie de acces la un sistem Ubuntu 20.04 cu un sistem non-root sudo contul utilizatorului. În plus, trebuie să instalați unele dependențe pentru Composer, care include php-cli pentru a rula scripturi PHP în terminalul dvs., dezarhivați pentru a ajuta Composer să extragă pachetele descărcate și răsuci pentru a descărca scriptul de instalare a compozitorului

Pentru a instala toate pachetele necesare, actualizați lista de pachete Ubuntu executând comanda de actualizare:

actualizare sudo apt

Apoi instalați php-cli, dezarhivați și răsuci folosind următoarea comandă:

sudo apt install php-cli unzip curl

Vi se va solicita să confirmați instalarea, apăsați Y apoi apăsați enter. După ce ați îndeplinit toate cerințele preliminare, puteți continua să instalați Composer.

Descărcați și instalați Composer

Composer oferă un script PHP frumos pentru a-l descărca și instala pe mașina dvs. din linia de comandă. Trebuie să folosim răsuci pentru a descărca acest script, verificați-i autenticitatea din motive de securitate și apoi executați-l pentru a instala Composer.

Asigurați-vă că terminalul dvs. este deschis în directorul principal și apoi descărcați scriptul de instalare folosind răsuci:

cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php

Apoi, trebuie să verificăm că scriptul de instalare pe care l-am descărcat este autentic prin potrivirea hash-ului SHA-384 al acestuia cu cel găsit pe pagina Composer Public Key/ Checksums. Pentru a face acest lucru, obțineți hash-ul SHA-384 din pagina Cheie publică Composer și stocați-l într-o variabilă shell.

Hash=`curl -sS //composer.github.io/installer.sig`

Apoi verificați dacă ați obținut și stocat cu succes hash-ul în variabilă rulând:

echo $Hash

Ar trebui să obțineți o ieșire a unui șir aleatoriu, cum ar fi acesta de la terminal:

Ieșire: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a

Acum, rulați următorul cod PHP furnizat de Composer pentru a verifica autenticitatea scriptului de instalare:

php -r "dacă (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'Installer verificat'; } else { echo 'Installer corupt'; unlink('composer-setup) .php'); } echo PHP_EOL;"
Ieșire: Instalator verificat

Dacă vedeți orice altă ieșire, cum ar fi Instalatorul corupt, atunci veți ști că scriptul este corupt și nu este sigur de rulat. Descărcați din nou scriptul folosind curl, apoi executați din nou codul PHP în terminal pentru a verifica scriptul de instalare.

Puteți continua cu instalarea după ce ați verificat cu succes programul de instalare. Puteți instala Install the Composer global sau local pentru un singur proiect.

Instalați Composer la nivel global

Pentru a instala Composer la nivel global ca o comandă la nivel de sistem numită compozitor, rulați următoarea comandă:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Composer va fi instalat în /usr/local/bin directorul de pe sistemul dumneavoastră Ubuntu 20.04 și veți vedea rezultate ca aceasta:

Ieșire: Toate setările sunt corecte pentru utilizarea Composer Descărcare... Composer (versiunea 1.10.7) instalat cu succes pe: /usr/local/bin/composer Utilizați-l: php /usr/local/bin/composer 

Verificați dacă Composer este instalat corect și funcționează, rulând:

compozitor
Ieșire: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / / /_ / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Composer versiunea 1.10.7 2020-06- 03 10:03:56 Utilizare: comandă [opțiuni] [argumente] 

Ați instalat cu succes compozitorul pe sistemul dumneavoastră Ubuntu 20.04. Acum puteți începe să utilizați Composer pentru a gestiona, actualiza și instala imediat dependențe în proiectele dvs. PHP.

Instalarea locală a Composer

Instalarea locală a Composer este utilă atunci când nu aveți permisiunea de a-l instala la nivel de sistem sau dacă doriți Composer doar pentru un singur proiect. Pentru a instala compozitorul, rulați local:

php composer-setup.php

Comanda de mai sus va crea un nou fișier în directorul curent numit compozitor.phar. Va trebui să mutați acest fișier în folderul rădăcină al proiectului pentru a utiliza funcțiile Composer. Acest fișier poate fi rulat folosind comanda prezentată mai jos.

php composer.phar

Bazele compozitorului

Acum, că ați instalat Composer pe mașina dvs. Ubuntu 20.04, să ne uităm la câteva elemente de bază ale Composer. Composer își propune să faciliteze instalarea și actualizările ușoare ale dependențelor și pentru a face acest lucru creează multe fișiere în directorul rădăcină al proiectului. Să ne uităm la structura de directoare a unui proiect folosind Composer pentru a gestiona dependențele.

Structura rădăcină a proiectului Composer:ProjectRoot/ ├── composer.json ├── composer.lock ├── Project.php ├── compozitor.phar *Numai dacă ați instalat local Composer └── vânzător ├── încărcare automată.php ├── compozitor │ ├── ClassLoader.php │ ├── LICENȚĂ │ ├── autoload_classmap.php │ ├── ..... ├── ....... 
  • The compozitor.json fișierul aflat în directorul rădăcină al proiectului stochează toate informațiile despre dependențele (pachetele) cerute de proiect.
  • The compozitor.blocare deține informațiile despre pachetele care sunt blocate în versiune pentru proiect.
  • vânzător este directorul în care sunt stocate toate pachetele, are și câteva scripturi PHP precum încărcare automată.php, care facilitează includerea automată a pachetelor în directorul vânzătorilor.
  • În cele din urmă, dacă ați instalat local Composer trebuie să aveți compozitor.phar fișier în directorul proiectului pentru a instala pachete.

Toate aceste fișiere sunt create atunci când utilizați compozitor sau php composer.phar comanda pentru a descărca și instala pachete pentru proiectul dvs. prima dată. Deci, să ne uităm la funcționarea Composer prin crearea unui proiect Demo.

Crearea primului proiect folosind Composer

Primul pas este să creați un director rădăcină pentru proiectul dvs., așa că creați unul cu mkdir comanda și navigați la ea utilizând CD comanda:

mkdir ~/ComposerDemo cd ~/ComposerDemo

Acum, trebuie să găsim și să instalăm pachetele/bibliotecile necesare pentru a construi proiectul nostru demo. Packagist este depozitul principal al Composer care listează toate pachetele PHP disponibile public care pot fi instalate cu Composer.

În acest exemplu, vom folosi un pachet PHP numit cakephp/chronos, este o extensie API simplă pentru dată și oră. Astfel, pentru a genera un nou proiect Composer și a instala pachetul Chronos, rulați următoarea comandă:

compozitorul necesită cakephp/chronos
Ieșire: Folosirea versiunii ^2.0 pentru cakephp/chronos ./composer.json a fost creată. Încărcarea depozitelor compozitorului cu informații despre pachet. Actualizarea dependențelor (inclusiv require-dev) Operațiuni de pachet: 1 instalare, 0 actualizări, 0 eliminări - Instalarea cakephp/chronos (2.0.5) ): Descărcare (100%) Scriere fișier de blocare Generarea fișierelor de încărcare automată 

The cere opțiunea preia și instalează pachetul dorit și generează fișierele și directoarele, cum ar fi compozitor.json, compozitor.blocare și vânzător în directorul rădăcină al proiectului. Vei vedea asta cakephp/chronos se adaugă la compozitor.json dacă rulați următoarea comandă:

cat composer.json
Ieșire: { "require": { "cakephp/chronos": "^2.0" } } 

Apoi, să folosim Chronos în proiectul nostru Demo, să deschidem și să creăm un fișier PHP numit demo.php folosind nano:

nano demo.php

Apoi adăugați următorul cod la demo.php, a doua linie care include vendor/autoload.php este un fișier Composer care încarcă automat toate pachetele și bibliotecile care sunt instalate pentru proiect. Salvați fișierul apăsând Ctrl+O și apoi ieșiți din editorul nano apăsând Ctrl+X.

Executați demo.php rulând următoarea comandă:

php demo.php
Ieșire: Acum: 23-06-2020 17:07:45

În viitor, când trebuie să actualizați pachetele și bibliotecile proiectului, pur și simplu rulați următoarea comandă:

actualizare a compozitorului

Comanda de mai sus va verifica versiunea mai nouă a pachetelor instalate și le va actualiza în siguranță, fără a întrerupe proiectul și bibliotecile sale interdependente.

Am analizat cum să instalați Composer pe mașina Ubuntu 20.04 și ne-am uitat la elementele de bază pe care trebuie să le știți despre Composer. Acum puteți încerca să construiți noi proiecte adăugând pachetele necesare căutând pe Packagist. Dacă doriți să aflați mai multe despre Composer și opțiunea sa, accesați pagina de documentație online a Composer.