Kaip įdiegti ir naudoti PHP Composer Ubuntu 20.04 LTS

Lengvai kurkite savo PHP projektą, leisdami kompozitoriui valdyti visas priklausomybes

„Composer“ yra PHP priklausomybės valdymo įrankis. Ji skiriasi nuo tradicinės paketų tvarkyklės, tokios kaip apt ir dnf, tokiu būdu, kad jis neįdiegtų paketų ir bibliotekų visame pasaulyje visos sistemos lygmeniu, o tvarko juos kiekvienam projektui atskirai. Taigi tai yra priklausomybės tvarkyklė, o ne paketų tvarkyklė.

Panašiai kaip muzikos kūrėjas paima krūvą instrumentų ir sutvarko juos taip, kad jie nepriekaištingai veiktų koncerte, „Composer for PHP“ paima daugybę bibliotekų ir struktūrų, supakuoja jas, kad veiktų kartu ir sukurtų tvirtą pagrindą, ant kurio gali būti sukurtas PHP projektas. sudarytas.

Būtinos sąlygos

Jums reikia prieigos prie Ubuntu 20.04 sistemos su ne root sudo vartotojo paskyra. Be to, turite įdiegti kai kurias „Composer“ priklausomybes, kurios apima php-cli paleisti PHP scenarijus savo terminale, išpakuokite padėti Kompozitoriui išgauti atsisiųstus paketus ir garbanoti Norėdami atsisiųsti kompozitoriaus diegimo scenarijų

Norėdami įdiegti visus reikiamus paketus, atnaujinkite Ubuntu paketų sąrašą vykdydami atnaujinimo komandą:

sudo apt atnaujinimas

Tada įdiekite php-cli, išpakuokite ir garbanoti naudojant šią komandą:

sudo apt install php-cli unzip curl

Būsite paraginti patvirtinti diegimą, paspauskite Y tada paspauskite enter. Įvykdę visas būtinas sąlygas, galite tęsti „Composer“ diegimą.

Atsisiųskite ir įdiekite kompozitorių

„Composer“ siūlo puikų PHP scenarijų, kurį galite atsisiųsti ir įdiegti į savo kompiuterį iš komandinės eilutės. Turime naudoti garbanoti Norėdami atsisiųsti šį scenarijų, saugumo sumetimais patikrinkite jo autentiškumą ir paleiskite jį, kad įdiegtumėte Composer.

Įsitikinkite, kad jūsų terminalas atidarytas pagrindiniame kataloge, tada atsisiųskite diegimo scenarijų naudodami garbanoti:

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

Tada turime patikrinti, ar atsisiųstas diegimo scenarijus yra autentiškas, suderindami jo SHA-384 maišą su tuo, kuris yra kompozitoriaus viešojo rakto / kontrolinių sumų puslapyje. Norėdami tai padaryti, gaukite SHA-384 maišą iš kompozitoriaus viešojo rakto puslapio ir išsaugokite jį apvalkalo kintamajame.

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

Tada patikrinkite, ar sėkmingai gavote ir išsaugojote maišą kintamajame, vykdydami:

echo $Hash

Iš terminalo turėtumėte gauti kokios nors atsitiktinės eilutės išvestį, pavyzdžiui, šią:

Išvestis: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a

Dabar paleiskite šį PHP kodą, kurį pateikė Composer, kad patikrintumėte diegimo scenarijaus autentiškumą:

php -r "if (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'Įdiegimo programa patvirtinta'; } else { echo 'Įdiegimo programa sugadinta'; unlink ('composer-setup) .php'); } echo PHP_EOL;"
Išvestis: Patvirtino montuotojas

Jei matote kitą išvestį, pvz Diegimo programa sugadinta, tada žinosite, kad scenarijus sugadintas ir nesaugu jį paleisti. Dar kartą atsisiųskite scenarijų naudodami curl, tada dar kartą paleiskite PHP kodą terminale, kad patikrintumėte diegimo scenarijų.

Galite tęsti diegimą, kai sėkmingai patvirtinsite diegimo programą. Galite įdiegti „Install the Composer“ visame pasaulyje arba lokaliai vienam projektui.

Įdiekite „Composer“ visame pasaulyje

Norėdami įdiegti „Composer“ visame pasaulyje kaip visos sistemos komandą, pavadintą kompozitorius, paleiskite šią komandą:

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

Kompozitorius bus įdiegtas /usr/local/bin katalogą savo Ubuntu 20.04 sistemoje ir pamatysite tokią išvestį:

Išvestis: Visi nustatymai tinkami naudojant Composer Atsisiunčiama... Kompozitorius (1.10.7 versija) sėkmingai įdiegtas į: /usr/local/bin/composer Naudokite: php /usr/local/bin/composer 

Patikrinkite, ar Composer tinkamai įdiegtas ir veikia, paleisdami:

kompozitorius
Išvestis: __/ / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Kompozitoriaus versija 1.10.7 2020-06- 03 10:03:56 Naudojimas: komanda [parinktys] [argumentai] 

Sėkmingai įdiegėte kompozitorių savo Ubuntu 20.04 sistemoje. Dabar galite pradėti naudoti „Composer“, kad iš karto tvarkytumėte, atnaujintumėte ir įdiegtumėte priklausomybes savo PHP projektuose.

„Composer“ diegimas vietoje

„Composer“ diegimas vietoje yra naudingas, kai neturite leidimo jo įdiegti visos sistemos lygiu arba jei norite, kad „Composer“ būtų skirtas tik vienam projektui. Norėdami įdiegti kompozitorių vietoje, paleiskite:

php composer-setup.php

Aukščiau pateikta komanda sukurs naują failą dabartiniame kataloge, pavadintame kompozitorius.phar. Norėdami naudoti kompozitoriaus funkcijas, turėsite perkelti šį failą į projekto šakninį aplanką. Šį failą galima paleisti naudojant toliau pateiktą komandą.

php kompozitorius.phar

Kompozitoriaus pagrindai

Dabar, kai savo Ubuntu 20.04 kompiuteryje įdiegėte „Composer“, pažvelkime į kai kuriuos „Composer“ pagrindus. „Composer“ siekia palengvinti lengvą priklausomybių įdiegimą ir atnaujinimą, todėl projekto šakniniame kataloge sukuria daug failų. Pažvelkime į projekto katalogo struktūrą, naudodami „Composer“ priklausomybėms valdyti.

Kompozitoriaus projekto šakninė struktūra:ProjectRoot/ ├── composer.json ├── composer.lock ├── Project.php ├── kompozitorius.phar *Tik jei įdiegėte Composer vietoje └── pardavėjas ├── autoload.php ├── kompozitorius │ ├── ClassLoader.php │ ├── LICENCIJA │ ├── autoload_classmap.php │ ├── ..... ├── ....... 
  • The kompozitorius.json faile, esančiame projekto šakniniame kataloge, saugoma visa informacija apie priklausomybes (paketus), kurių reikia projektui.
  • The kompozitorius.užraktas saugo informaciją apie paketus, kurių versija užrakinta projektui.
  • pardavėjas yra katalogas, kuriame saugomi visi paketai, jame taip pat yra keletas PHP scenarijų, tokių kaip autoload.php, kuri palengvina automatinį paketų įtraukimą į tiekėjo katalogą.
  • Galiausiai, jei įdiegėte Composer vietoje, turite kompozitorius.phar failą projekto kataloge, kad įdiegtumėte paketus.

Visi šie failai sukuriami, kai naudojate kompozitorius arba php kompozitorius.phar komanda, kad pirmą kartą atsisiųstumėte ir įdiegtumėte savo projekto paketus. Taigi pažvelkime į „Composer“ darbą kurdami demonstracinį projektą.

Pirmojo projekto kūrimas naudojant kompozitorių

Pirmas žingsnis yra sukurti projekto šakninį katalogą, todėl sukurkite jį naudodami mkdir komandą ir pereikite prie jos naudodami cd komanda:

mkdir ~/ComposerDemo cd ~/ComposerDemo

Dabar turime rasti ir įdiegti paketus / bibliotekas, reikalingus mūsų demonstraciniam projektui sukurti. „Packagist“ yra pagrindinė „Composer“ saugykla, kurioje pateikiami visi viešai prieinami PHP paketai, kuriuos galima įdiegti naudojant „Composer“.

Šiame pavyzdyje naudosime PHP paketą, vadinamą cakephp/chronos, tai paprastas API plėtinys datai ir laikui. Taigi, norėdami sukurti naują Composer projektą ir įdiegti Chronos paketą, paleiskite šią komandą:

kompozitorius reikalauja cakephp/chronos
Išvestis: Naudojama ^2.0 versija, skirta cakephp/chronos. Sukurta ./composer.json Įkeliama kompozitoriaus saugyklos su informacija apie paketą Priklausomybių atnaujinimas (įskaitant reikalingą dev.) Paketo operacijos: 1 diegimas, 0 naujinimų, 0 pašalinimų – Cakephp/chronos (2.0.5) diegimas ): Siuntimas (100%) Rašomas užrakto failas Generuojami automatiškai įkeliami failai 

The reikalauti parinktis paima ir įdiegia norimą paketą ir sugeneruoja failus bei katalogus, tokius kaip kompozitorius.json, kompozitorius.užraktas ir pardavėjas projekto šakniniame kataloge. Jūs tai pamatysite cakephp/chronos pridedamas prie kompozitorius.json jei paleisite šią komandą:

kačių kompozitorius.json
Išvestis: { "reikalauti": { "cakephp/chronos": "^2.0" } } 

Tada panaudokime Chronos savo demonstraciniame projekte, atidarykite ir sukurkite PHP failą, vadinamą demo.php naudojant nano:

nano demo.php

Tada pridėkite šį kodą prie demo.php, antroji eilutė, kurioje yra pardavėjas/autoload.php yra kompozitoriaus failas, kuris automatiškai įkelia visus projektui įdiegtus paketus ir bibliotekas. Išsaugokite failą paspausdami Ctrl + O ir išeikite iš nano redaktoriaus paspausdami Ctrl + X.

Vykdyti demo.php paleisdami šią komandą:

php demo.php
Išvestis: Dabar: 2020-06-23 17:07:45

Ateityje, kai reikės atnaujinti projekto paketus ir bibliotekas, tiesiog paleiskite šią komandą:

kompozitoriaus atnaujinimas

Aukščiau pateikta komanda patikrins, ar nėra naujesnės įdiegtų paketų versijos, ir saugiai juos atnaujins nepažeidžiant projekto ir jo tarpusavyje susijusių bibliotekų.

Išnagrinėjome, kaip įdiegti „Composer“ Ubuntu 20.04 įrenginyje, ir apžvelgėme pagrindus, kuriuos reikia žinoti apie „Composer“. Dabar galite pabandyti kurti naujus projektus pridėdami reikiamus paketus ieškodami Packagist. Jei norite sužinoti daugiau apie „Composer“ ir jo parinktį, eikite į „Composer“ internetinės dokumentacijos puslapį.