Descărcarea, instalarea și utilizarea compozitorului pe Ubuntu 14.04

Composer este un instrument extrem de popular de management PHP pentru dependențe, utilizat pentru a facilita instalarea și actualizările pentru proiecte. De asemenea, verifică ce alte pachete are nevoie de un proiect și le obține automat pentru dvs., cu versiunea corectă.

În acest document, vom instala și vom începe să utilizăm Composer pe un VPS Vultr Ubuntu 14.04.

cerinţe

  • Un Vultr Ubuntu 14.04 VPS.
  • Un utilizator obișnuit cu Sudoacces la acel VPS.

Instalare

Instalarea dependenței

În primul rând, trebuie să ne asigurăm că VPS-ul nostru are toate cerințele Compozitorului instalate și funcționate cu succes.

Actualizați lista de pachete.

sudo apt-get update

Apoi, instalați de fapt cerințele Compozitorului. Veți avea nevoie curlpentru descărcare și php5-clipentru instalarea și utilizarea acesteia. giteste folosit și de Composer pentru descărcările de cerințe ale proiectului.

Instalați cerințele.

sudo apt-get install curl php5-cli git

descarca si instaleaza

Instalarea compozitorului este foarte simplă.

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

Acesta descarcă și instalează Composer ca o comandă globală, numită composer, localizată în /usr/local/bin. Veți obține această ieșire.

#!/usr/bin/env php
All settings correct for using Composer
Downloading...

Composer successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

Rulați următoarele pentru a testa instalarea.

composer

Rezultatul va fi după cum urmează.

   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.0-dev (9859859f1082d94e546aa75746867df127aa0d9e) 2015-08-17 14:57:00

Usage:
 command [options] [arguments]

folosire

Fișier JSON

Pentru a utiliza Composer, aveți nevoie de un fișier apelat composer.jsonpentru a spune Composer ce cerințe are proiectul dvs. și ce versiune a acestor cerințe de instalat. Nu crea acest lucru manual pentru a evita să faci ceva incorect - Composer creează fișierul pentru tine atunci când adaugi dependențe. De asemenea, sunt adăugate automat dependențe suplimentare.

Exemplu de utilizare a compozitorului

Pentru a utiliza Composer pentru instalații de dependență:

  • Identificați biblioteca necesară pentru aplicație.
  • Găsiți o bibliotecă bună, open-source, în <Packagist.org>, în depozitul Compositor.
  • Alege pachetul dorit.
  • Folosiți composer requirepentru a include și instala dependența.

Inițializarea Slugit

Vom parcurge acum acest proces cu o aplicație de exemplu simplă, care va lua o propoziție și o va face un șir prietenos, numit slugă. Aceasta este folosită frecvent pentru a converti numele paginilor în adrese URL, pentru a facilita generarea adreselor URL și a căilor. Vom începe realizând un folder pentru aplicație, numit slugit.

mkdir ~/slugit
cd ~/slugit

Căutarea pe Packagist

Vom continua acum și vom packagist.orggăsi un pachet care să ajute la generarea de sluguri. Căutarea slugpe Packagist ar trebui să arate unele dintre aceste pachete.

easy-slug/easy-slug, muffin/slug, ddd/slug, zelenin/slug, webcastle/slug, anomaly/slug-field_type

Trebuie să găsim un convertor cu șiruri, pentru a cocur/slugifyarăta bine, cu multe instalații și stele.

Necesită un pachet

După alegerea pachetului, rulăm composer requirepentru a-l include ca dependență, a-l genera composer.jsonși instala.

composer require cocur/slugify

După cum se vede în ieșirea generată, Composer a selectat cea mai recentă versiune de pachet și a folosit-o. Verificând ~/slugit, ar trebui să vedeți 2 fișiere composer.lockși composer.json, plus un folder numit vendor.

composer.lock este utilizat pentru a stoca informații despre versiunile de pachete și pentru a le păstra la fel.

vendorDirector este utilizat pentru a instala dependențele. Nu faceți acest folder într-un depozit Git sau GitHub.

Dacă un proiect pe care l-ai descărcat conține deja composer.json, folosește composer installpentru a descărca dependențele sale.

Înțelegerea constrângerilor versiunii

Dacă verificați ce composer.jsoninclude, ar trebui să vedeți ceva similar cu acest bloc.

{
    "require": {
        "cocur/slugify": "^1.2"
    }
}

Compozitorul are multe formate și constrângeri diferite pentru a defini versiunea unui pachet, pentru a permite flexibilitatea cuplată cu stabilitatea. ^înainte ca un număr de versiune să facă acea versiune minimă și permite toate versiunile de mai jos 2.0.

În mod normal, nu trebuie să schimbați restricțiile de versiune, dar, dacă faceți acest lucru, verificați documentația oficială a Composerului pentru mai multe informații și instrucțiuni cu privire la modul în care funcționează totul.

Scenariul automat

Compozitorul oferă un script de încărcare automată, ceea ce face mult mai ușor să lucrezi cu dependențele și spațiile de nume.

vendor/autoload.phpTrebuie doar să includeți în PHP-ul dvs. înainte de orice instanță.

Înapoi la slugitexemplul nostru . Să creăm un script de testare, numit example.php, folosind cocur/slugify.

vim example.php

Introduceți următoarele example.php.

<?php
require __DIR__ . '/vendor/autoload.php';

use Cocur\Slugify\Slugify;

$slugify = new Slugify();

echo $slugify->slugify('Hello World, this is a long sentence and I need to make a slug from it!');

Rulați scriptul.

php example.php

Va emite următorul text:

hello-world-this-is-a-long-sentence-and-i-need-to-make-a-slug-from-it

Actualizarea dependențelor proiectului

Pentru a actualiza dependențele de proiect.

composer update

Dacă se găsesc actualizări și sunt compatibile cu constrângerea dată composer.json, aceasta va înlocui versiunea anterioară și actualizarea composer.lock.

Pentru a actualiza una sau mai multe biblioteci specifice.

composer update vendor1/package1 vendor2/package2

Concluzie

În acest tutorial, am trecut prin instalarea, configurarea și un exemplu de utilizare a Compozitorului pentru gestionarea dependenței de aplicații PHP.



Leave a Comment

Cum se instalează Anchor CMS pe un VPS Fedora 26 LAMP

Cum se instalează Anchor CMS pe un VPS Fedora 26 LAMP

Folosind un sistem diferit? Anchor CMS este un motor de blog de sistem de gestionare a conținutului (CMS) super-simplu și extrem de ușor, gratuit și deschis

Configurare partajare NFS pe Debian

Configurare partajare NFS pe Debian

NFS este un sistem de fișiere bazat pe rețea care permite computerelor să acceseze fișiere într-o rețea de calculatoare. Acest ghid explică modul în care puteți expune folderele peste NF

Configurați un server TeamTalk pe Linux

Configurați un server TeamTalk pe Linux

TeamTalk este un sistem de conferințe care permite utilizatorilor să aibă conversații audio / video de înaltă calitate, chat de text, transfer de fișiere și partajare ecrane. Este

Folosind cheia SSH pentru a vă conecta la utilizatori non-root

Folosind cheia SSH pentru a vă conecta la utilizatori non-root

Vultr oferă o caracteristică care vă permite să preinstalați cheile SSH la crearea unei noi instanțe. Acest lucru vă permite să accesați utilizatorul root al serverelor, totuși

Cum se instalează Ranger Terminal File Manager pe Linux

Cum se instalează Ranger Terminal File Manager pe Linux

Ranger este un manager de fișiere bazat pe linia de comandă cu legături de cheie VI. Oferă o interfață de blestem minimalistă și frumoasă, cu o vedere asupra ierarhiei de directoare

Cum se instalează Redmine pe Ubuntu 16.04

Cum se instalează Redmine pe Ubuntu 16.04

Folosind un sistem diferit? Redmine este un instrument gratuit și deschis de gestionare a proiectelor bazat pe web. Este scris în Ruby on Rails și acceptă mai multe baze de date

Instalare RethinkDB Cluster pe CentOS 7

Instalare RethinkDB Cluster pe CentOS 7

Introducere RethinkDB este o bază de date NoSQL care stochează date sub formă de documente JSON. Are un limbaj de interogare super intuitiv și are funcții disponibile în mod obișnuit

Cum se construiește Brotli din sursă pe Ubuntu 18.04 LTS

Cum se construiește Brotli din sursă pe Ubuntu 18.04 LTS

Folosind un sistem diferit? Brotli este o nouă metodă de compresie cu un raport de compresie mai bun decât GZIP. Codul sursă este găzduit public pe acest Githu

Configurarea conturilor de utilizator numai SFTP pe CentOS 7

Configurarea conturilor de utilizator numai SFTP pe CentOS 7

În anumite ocazii, este posibil ca un administrator de sistem să aibă nevoie să creeze un cont de utilizator și să restricționeze accesul acestora la gestionarea propriilor fișiere prin sFTP, dar nu b

Utilizarea vizualizărilor MySQL pe Debian 7

Utilizarea vizualizărilor MySQL pe Debian 7

Introducere MySQL are o caracteristică excelentă cunoscută sub numele de vizualizări. Vizualizările sunt interogări stocate. Gândiți-vă la ele ca la un alias pentru o întrebare altfel lungă. În acest ghid,

Cum se instalează Nginx 1.14 pe Arch Linux

Cum se instalează Nginx 1.14 pe Arch Linux

Cerințe preliminare Un server Vultr care funcționează actualizat Arch Linux (vezi acest articol.) Acces Sudo. Comenzile care trebuie rulate ca root sunt prefixate de #. Th

Dezactivați sau restricționați conectarea rădăcină prin SSH pe Linux

Dezactivați sau restricționați conectarea rădăcină prin SSH pe Linux

Permiterea autentificării root pe SSH este de obicei considerată o practică slabă de securitate în întreaga industrie tehnologică. În schimb, puteți efectua administrativ sensibil

Cum se instalează Seafile Server pe Ubuntu 16.10

Cum se instalează Seafile Server pe Ubuntu 16.10

Folosind un sistem diferit? Seafile (versiunea comunității) este o soluție gratuită și deschisă de sincronizare și partajare a fișierelor, care este similară cu ownCloud. De-a lungul spiritului

Cum să compilați Nginx din sursă pe CentOS 7

Cum să compilați Nginx din sursă pe CentOS 7

Folosind un sistem diferit? NGINX poate fi utilizat ca server HTTP / HTTPS, server proxy invers, server proxy de poștă, echilibrator de sarcină, terminator TLS sau cachin

Cum se instalează Thelia 2.3 pe Debian 9

Cum se instalează Thelia 2.3 pe Debian 9

Folosind un sistem diferit? Thelia este un instrument open source pentru crearea de site-uri web pentru e-business și gestionarea conținutului online scris în PHP. Codul sursă Thelia i

Cum se instalează DokuWiki pe Ubuntu 16.04 LTS

Cum se instalează DokuWiki pe Ubuntu 16.04 LTS

Folosind un sistem diferit? DokuWiki este un program wiki open source scris în PHP care nu necesită o bază de date. Stochează date în fișiere text. DokuWik

Configurarea unui chroot pe Debian

Configurarea unui chroot pe Debian

Acest articol vă va învăța cum să configurați o închisoare chroot pe Debian. Presupun că utilizați Debian 7.x. Dacă executați Debian 6 sau 8, acest lucru poate funcționa, bine

Cum se instalează PiVPN pe Debian

Cum se instalează PiVPN pe Debian

Introducere Un mod ușor de a configura un server VPN pe Debian este cu PiVPN. PiVPN este un instalator și un pachet pentru OpenVPN. Creează comenzi simple pentru tine

Cum se instalează Chamilo 1.11.8 pe CentOS 7

Cum se instalează Chamilo 1.11.8 pe CentOS 7

Folosind un sistem diferit? Chamilo este un sistem gratuit și deschis de management al învățării (LMS), care este utilizat pe scară largă pentru educația online și colaborarea în echipă

Instalați Nginx, Wordpress și permiteți criptarea în minute cu EasyEngine pe Debian 8 sau Ubuntu 16.04

Instalați Nginx, Wordpress și permiteți criptarea în minute cu EasyEngine pe Debian 8 sau Ubuntu 16.04

EasyEngine (ee) este un instrument Python care vă permite să gestionați ușor și automat site-urile Wordpress de pe Nginx. Folosind EasyEngine, nu va trebui să dați

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe