Z lahkoto sestavite svoj projekt PHP tako, da skladatelju dovolite, da upravlja vse odvisnosti
Composer je orodje za upravljanje odvisnosti za PHP. Razlikuje se od tradicionalnega upravitelja paketov, kot je npr apt
in dnf
, na način, da paketov in knjižnic ne namešča globalno na ravni celotnega sistema, temveč jih obravnava za vsak projekt posebej. Tako je upravitelj odvisnosti in ne upravitelj paketov.
Podobno kot skladatelj glasbe vzame kup inštrumentov in jih uredi tako, da brezhibno delujejo na koncertu, Composer za PHP vzame kup knjižnic in okvirjev, jih zapakira za skupno delo in ustvari trdne temelje, na katerih je lahko projekt PHP. sestavljen.
Predpogoji
Potrebujete dostop do sistema Ubuntu 20.04 z nekorenskim sistemom sudo
uporabniški račun. Poleg tega morate namestiti nekaj odvisnosti za Composer, ki vključuje php-cli
za zagon PHP skriptov v vašem terminalu, odprite zadrgo
za pomoč Composerju pri ekstrahiranju prenesenih paketov in curl
za prenos namestitvenega skripta skladatelja
Če želite namestiti vse zahtevane pakete, posodobite seznam paketov Ubuntu z ukazom za posodobitev:
sudo apt posodobitev
Nato namestite php-cli
, odprite zadrgo
in curl
z naslednjim ukazom:
sudo apt namestite php-cli razpakirajte curl
Pozvani boste, da potrdite namestitev, pritisnite Y
nato pritisnite enter. Ko izpolnite vse predpogoje, lahko nadaljujete z namestitvijo Composerja.
Prenesite in namestite Composer
Composer ponuja urejen PHP skript za prenos in namestitev na vaš računalnik iz ukazne vrstice. Moramo uporabiti curl
Če želite prenesti ta skript, preverite njegovo pristnost iz varnostnih razlogov in ga nato izvedite, da namestite Composer.
Prepričajte se, da je vaš terminal odprt v domačem imeniku in nato z uporabo prenesite namestitveni skript curl
:
cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php
Nato moramo preveriti, ali je namestitveni skript, ki smo ga prenesli, pristen, tako da uskladimo njegovo razpršitev SHA-384 s tistim, ki ga najdemo na strani Composer Public Key/Kontrolne vsote. To storite tako, da pridobite razpršilo SHA-384 s strani z javnim ključem Composer in ga shranite v spremenljivko lupine.
Hash=`curl -sS //composer.github.io/installer.sig`
Nato preverite, ali ste uspešno pridobili in shranili hash v spremenljivko, tako da zaženete:
odmeva $Hash
Iz terminala bi morali dobiti izhod nekega naključnega niza, kot je ta:
Izhod: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a
Zdaj zaženite naslednjo kodo PHP, ki jo je zagotovil Composer, da preverite pristnost namestitvenega skripta:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'Namestitveni program preverjen'; } else { echo 'Namestitveni program je poškodovan'; unlink('composer-setup .php'); } echo PHP_EOL;"
Izhod: Monter je preverjen
Če vidite kakšen drug izhod, kot je npr Namestitveni program je poškodovan
, potem boste vedeli, da je skript poškodovan in ga ni varno zagnati. Znova prenesite skript z uporabo curl, nato znova izvedite kodo PHP v terminalu, da preverite namestitveni skript.
Ko uspešno preverite namestitvenega programa, lahko nadaljujete z namestitvijo. Namestite Composer lahko globalno ali lokalno za en projekt.
Namesti Composer globalno
Če želite namestiti Composer globalno kot ukaz za celoten sistem z imenom skladatelj
, zaženite naslednji ukaz:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
Composer bo nameščen v /usr/local/bin
imenik v vašem sistemu Ubuntu 20.04 in videli boste izhod, kot je ta:
Izhod: Vse nastavitve so pravilne za uporabo Composer.
Preverite, ali je Composer pravilno nameščen in deluje tako, da zaženete:
skladatelj
Izhod: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / /_ / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Skladateljska različica 1.10.7 2020-06- 03 10:03:56 Uporaba: ukaz [možnosti] [argumenti]
Uspešno ste namestili composer v vaš sistem Ubuntu 20.04. Zdaj lahko začnete uporabljati Composer za upravljanje, posodabljanje in namestitev odvisnosti v svoje projekte PHP takoj.
Lokalna namestitev Composerja
Lokalna namestitev Composerja je uporabna, če nimate dovoljenja za namestitev na ravni celotnega sistema ali če želite Composer samo za en projekt. Za lokalno namestitev skladatelja zaženite:
php composer-setup.php
Zgornji ukaz bo ustvaril novo datoteko v vašem trenutnem imeniku z imenom skladatelj.phar
. To datoteko boste morali premakniti v korensko mapo projekta, če želite uporabljati funkcije Composer. To datoteko lahko zaženete z ukazom, prikazanim spodaj.
php composer.phar
Osnove skladateljev
Zdaj, ko imate nameščen Composer na vašem računalniku Ubuntu 20.04, si oglejmo nekaj osnov Composerja. Composer želi olajšati preprosto namestitev in posodabljanje odvisnosti in zato ustvari veliko datotek v korenskem imeniku projekta. Oglejmo si strukturo imenikov projekta z uporabo Composerja za upravljanje odvisnosti.
Korenska struktura projekta skladatelja:ProjectRoot/ ├── composer.json ├── composer.lock ├── Project.php ├── skladatelj.phar *Samo, če ste namestili Composer lokalno └── prodajalec ├── autoload.php ├── skladatelj │ ├── ClassLoader.php │ ├── LICENCA │ ├── autoload_classmap.php │ ├── ..... ├── .......
- The
composer.json
datoteka, ki se nahaja v korenskem imeniku projekta, shranjuje vse informacije o odvisnostih (paketih), ki jih zahteva projekt. - The
skladatelj.lock
vsebuje informacije o paketih, katerih različica je zaklenjena za projekt. prodajalec
je imenik, kjer so shranjeni vsi paketi, ima tudi nekaj PHP skriptov kot nprautoload.php
, ki olajša samodejno vključitev paketov v imenik prodajalcev.- Končno, če ste namestili Composer lokalno, morate to imeti
skladatelj.phar
datoteko v imeniku projekta za namestitev paketov.
Vse te datoteke so ustvarjene, ko uporabljate skladatelj
oz php composer.phar
ukaz za prvi prenos in namestitev paketov za vaš projekt. Poglejmo si torej delovanje Composerja tako, da ustvarimo demo projekt.
Ustvarjanje svojega prvega projekta z uporabo Composerja
Prvi korak je ustvariti korenski imenik za svoj projekt, zato ga ustvarite s mkdir
ukaz in se do njega pomaknite z uporabo cd
ukaz:
mkdir ~/ComposerDemo cd ~/ComposerDemo
Zdaj moramo poiskati in namestiti pakete/knjižnice, potrebne za izdelavo našega demo projekta. Packagist je glavno skladišče Composerja, ki navaja vse javno dostopne pakete PHP, ki jih je mogoče namestiti s Composerjem.
V tem primeru bomo uporabili paket PHP z imenom cakephp/chronos
, je preprosta razširitev API-ja za datum in čas. Če želite ustvariti nov projekt Composer in namestiti paket Chronos, zaženite naslednji ukaz:
skladatelj zahteva cakephp/chronos
Izhod: Uporaba različice ^2.0 za cakephp/chronos ./composer.json je bila ustvarjena. Nalaganje repozitorijev skladatelja s podatki o paketu Posodabljanje odvisnosti (vključno z zahteva-dev) Operacije paketa: 1 namestitev, 0 posodobitev, 0 odstranitev - Namestitev cakephp/chronos (2.0.5) ): Prenos (100%) Pisanje datoteke zaklepanja Ustvarjanje datotek samodejnega nalaganja
The zahtevajo
možnost pridobi in namesti želeni paket ter ustvari datoteke in imenike, kot je npr composer.json
, skladatelj.lock
in prodajalec
v korenskem imeniku projekta. To boste videli cakephp/chronos
je dodan k composer.json
če zaženete naslednji ukaz:
cat composer.json
Izhod: { "require": { "cakephp/chronos": "^2.0" } }
Nato uporabimo Chronos v našem Demo projektu, odpremo in ustvarimo datoteko PHP z imenom demo.php
z uporabo nano
:
nano demo.php
Nato dodajte naslednjo kodo v demo.php
, druga vrstica, ki vključuje vendor/autoload.php
je datoteka Composer, ki samodejno naloži vse pakete in knjižnice, ki so nameščene za projekt. Shranite datoteko s pritiskom na Ctrl+O
in nato zapustite urejevalnik nano s pritiskom na Ctrl+X
.
Izvedite demo.php
z zagonom naslednjega ukaza:
php demo.php
Izhod: Zdaj: 2020-06-23 17:07:45
V prihodnosti, ko boste morali posodobiti pakete in knjižnice svojega projekta, preprosto zaženite naslednji ukaz:
posodobitev skladatelja
Zgornji ukaz bo preveril novejšo različico nameščenih paketov in jih varno posodobil, ne da bi poškodoval projekt in njegove soodvisne knjižnice.
Preučili smo, kako namestiti Composer na stroj Ubuntu 20.04 in si ogledali osnove, ki jih morate vedeti o Composerju. Zdaj lahko poskusite zgraditi nove projekte z dodajanjem zahtevanih paketov z iskanjem na Packagist. Če želite izvedeti več o Composerju in njegovi možnosti, pojdite na spletno stran z dokumentacijo Composer.