Komponer PHP-prosjektet ditt på en enkel måte ved å la komponisten administrere alle avhengighetene
Composer er et avhengighetsstyringsverktøy for PHP. Den skiller seg fra den tradisjonelle pakkebehandleren som f.eks apt
og dnf
, på en måte slik at den ikke installerer pakkene og bibliotekene globalt på et systemomfattende nivå, men håndterer dem for hvert prosjekt separat. Dermed er det en avhengighetsbehandler og ikke en pakkebehandler.
På samme måte som hvordan en musikkkomponist tar en haug med instrumenter og arrangerer dem slik at de fungerer feilfritt på en konsert, tar Composer for PHP en haug med biblioteker og rammer, pakker dem for å fungere sammen og skaper et solid grunnlag som et PHP-prosjekt kan bygges på. komponert.
Forutsetninger
Du trenger tilgang til et Ubuntu 20.04-system med en ikke-root sudo
brukerkonto. I tillegg må du installere noen avhengigheter for Composer, som inkluderer php-cli
for å kjøre PHP-skript i terminalen din, pakke opp
for å hjelpe Composer med å trekke ut de nedlastede pakkene og krølle
for å laste ned komponistinstallasjonsskriptet
For å installere alle nødvendige pakker, oppdater Ubuntu-pakkelisten ved å kjøre oppdateringskommandoen:
sudo apt oppdatering
Installer deretter php-cli
, pakke opp
og krølle
ved å bruke følgende kommando:
sudo apt install php-cli unzip curl
Du vil bli bedt om å bekrefte installasjonen, trykk Y
trykk deretter enter. Etter at du har oppfylt alle forutsetningene, kan du fortsette å installere Composer.
Last ned og installer Composer
Composer tilbyr et pent PHP-skript for å laste ned og installere det på maskinen din fra kommandolinjen. Vi må bruke krølle
For å laste ned dette skriptet, kontroller dets autentisitet av sikkerhetsgrunner og kjør det deretter for å installere Composer.
Sørg for at terminalen din er åpen i hjemmekatalogen og last ned installasjonsskriptet ved å bruke krølle
:
cd ~ curl -sS //getcomposer.org/installer -o composer-setup.php
Deretter må vi bekrefte at installasjonsskriptet vi har lastet ned er ekte ved å matche SHA-384-hashen til det som finnes på Composer Public Key/ Checksums-siden. For å gjøre det, hent SHA-384-hashen fra Composer Public Key-siden og lagre den i en shell-variabel.
Hash=`curl -sS //composer.github.io/installer.sig`
Bekreft deretter at du har oppnådd og lagret hashen i variabelen ved å kjøre:
ekko $Hash
Du bør få utdata av en tilfeldig streng som denne fra terminalen:
Produksjon: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a
Kjør nå følgende PHP-kode levert av Composer for å bekrefte autentisiteten til installasjonsskriptet:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$Hash') { echo 'Installer verifisert'; } else { echo 'Installer korrupt'; unlink('composer-setup .php'); } echo PHP_EOL;"
Produksjon: Installatør bekreftet
Hvis du ser noen annen utgang som f.eks Installasjonsprogrammet er ødelagt
, da vil du vite at skriptet er ødelagt og det ikke er trygt å kjøre. Last ned skriptet igjen ved å bruke curl, og kjør deretter PHP-koden i terminalen igjen for å bekrefte installasjonsskriptet.
Du kan fortsette med installasjonen når du har verifisert installasjonsprogrammet. Du kan installere Install the Composer globalt eller lokalt for et enkelt prosjekt.
Installer Composer globalt
For å installere Composer globalt som en systemomfattende kommando kalt komponist
, kjør følgende kommando:
sudo php composer-setup.php --install-dir=/usr/local/bin --filnavn=komponist
Composer vil bli installert i /usr/local/bin
katalogen på ditt Ubuntu 20.04-system, og du vil se utdata som dette:
Produksjon: Alle innstillinger er riktige for bruk av Composer Laster ned... Composer (versjon 1.10.7) ble installert til: /usr/local/bin/composer Bruk den: php /usr/local/bin/composer
Bekreft at Composer er riktig installert og fungerer ved å kjøre:
komponist
Produksjon: ______ / ____/___ ____ ___ ____ ____ ________ _____ / / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/ / /___/ /_/ / / / / / /_ / / /_/ (__ ) __/ / \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/ /_/ Komponistversjon 1.10.7 2020-06- 03 10:03:56 Bruk: kommando [alternativer] [argumenter]
Du har installert composer på Ubuntu 20.04-systemet. Du kan nå begynne å bruke Composer til å administrere, oppdatere og installere avhengigheter i PHP-prosjektene dine umiddelbart.
Installerer Composer lokalt
Det er nyttig å installere Composer lokalt når du ikke har tillatelse til å installere det på et systemomfattende nivå, eller hvis du bare vil ha Composer for et enkelt prosjekt. Slik installerer du komponist lokalt:
php composer-setup.php
Kommandoen ovenfor vil opprette en ny fil i din nåværende katalog kalt komponist.phar
. Du må flytte denne filen til prosjektets rotmapp for å bruke Composer-funksjonene. Denne filen kan kjøres ved å bruke kommandoen vist nedenfor.
php-komponist.phar
Grunnleggende om komponist
Nå, som du har Composer installert på din Ubuntu 20.04-maskin, la oss se på noen grunnleggende om Composer. Composer har som mål å forenkle enkel installasjon og oppdateringer av avhengigheter, og for å gjøre det oppretter den mange filer i prosjektets rotkatalog. La oss se på katalogstrukturen til et prosjekt som bruker Composer til å administrere avhengigheter.
Komponistprosjektets rotstruktur:ProjectRoot/ ├── composer.json ├── composer.lock ├── Project.php ├── komponist.phar *Bare hvis du har installert Composer lokalt └── Leverandør ├── autoload.php ├── komponist │ ├── ClassLoader.php │ ├── LICENSE │ ├── autoload_classmap.php │ ├── ..... ├── .......
- De
composer.json
filen som ligger i prosjektets rotkatalog lagrer all informasjon om avhengighetene (pakkene) som kreves av prosjektet. - De
komponist.lås
inneholder informasjonen om pakkene som er versjonslåst for prosjektet. Leverandør
er katalogen der alle pakkene er lagret, den har også noen PHP-skript som f.eksautoload.php
, som letter automatisk inkludering av pakkene i leverandørkatalogen.- Til slutt, hvis du har installert Composer lokalt må du ha
komponist.phar
fil i prosjektkatalogen for å installere pakker.
Alle disse filene opprettes når du bruker komponist
eller php-komponist.phar
kommandoen for å laste ned og installere pakker for prosjektet ditt første gang. Så la oss se på hvordan Composer fungerer ved å lage et demoprosjekt.
Opprett ditt første prosjekt ved hjelp av Composer
Det første trinnet er å lage en rotkatalog for prosjektet ditt, så lag en med mkdir
kommandoen og naviger til den ved å bruke cd
kommando:
mkdir ~/ComposerDemo cd ~/ComposerDemo
Nå må vi finne og installere pakkene/bibliotekene som kreves for å bygge vårt demoprosjekt. Packagist er hoveddepotet for Composer som viser alle de offentlig tilgjengelige PHP-pakkene som kan installeres med Composer.
I dette eksemplet vil vi bruke en PHP-pakke kalt cakephp/chronos
, det er en enkel API-utvidelse for dato og klokkeslett. For å generere et nytt Composer-prosjekt og installere Chronos-pakken, kjør følgende kommando:
komponist krever cakephp/chronos
Produksjon: Bruker versjon ^2.0 for cakephp/chronos ./composer.json har blitt opprettet Laster komponistrepositorier med pakkeinformasjon Oppdatering av avhengigheter (inkludert require-dev) Pakkeoperasjoner: 1 installasjon, 0 oppdateringer, 0 fjerninger - Installere cakephp/chronos (2.0.5) ): Laster ned (100%) Skrivelåsfil Genererer autoloadfiler
De krever
alternativet henter og installerer pakken du ønsker og genererer filene og katalogene som f.eks composer.json
, komponist.lås
og Leverandør
i prosjektets rotkatalog. Du vil se det cakephp/chronos
legges til composer.json
hvis du kjører følgende kommando:
cat composer.json
Produksjon: { "require": { "cakephp/chronos": "^2.0" } }
La oss deretter bruke Chronos i vårt demoprosjekt, åpne og lage en PHP-fil kalt demo.php
ved hjelp av nano
:
nano demo.php
Legg deretter til følgende kode til demo.php
, den andre linjen som inkluderer leverandør/autoload.php
er en Composer-fil som automatisk laster inn alle pakkene og bibliotekene som er installert for prosjektet. Lagre filen ved å trykke Ctrl+O
og gå ut av nanoredigering ved å trykke Ctrl+X
.
Utfør demo.php
ved å kjøre følgende kommando:
php demo.php
Produksjon: Nå: 2020-06-23 17:07:45
Når du i fremtiden trenger å oppdatere pakkene og bibliotekene til prosjektet ditt, kjør ganske enkelt følgende kommando:
komponistoppdatering
Kommandoen ovenfor vil se etter den nyere versjonen av installerte pakker og oppdatere dem sikkert uten å ødelegge prosjektet og dets gjensidig avhengige biblioteker.
Vi har sett på hvordan du installerer Composer på Ubuntu 20.04-maskinen og sett på det grunnleggende du trenger å vite om Composer. Du kan nå prøve å bygge nye prosjekter ved å legge til de nødvendige pakkene ved å søke på Packagist. Hvis du ønsker å lære mer om Composer og dets alternativer, gå til Composer online dokumentasjonsside.