Descàrrega, instal·lació i ús de Composer a Ubuntu 14.04

Composer és una eina de gestió PHP molt popular per a dependències, que s'utilitza per facilitar la instal·lació i les actualitzacions dels projectes. També comprova quins altres paquets necessita un projecte i els obté automàticament per a tu, amb la versió correcta.

En aquest document, instal·larem i començarem a utilitzar Composer en un Vultr Ubuntu 14.04 VPS.

Requisits

  • Un Vultr Ubuntu 14.04 VPS.
  • Un usuari habitual amb Sudoaccés a aquest VPS.

Instal·lació

Instal·lació de dependència

En primer lloc, ens hem d'assegurar que el nostre VPS té tots els requisits de Composer instal·lats i funcionant correctament.

Actualitzeu la llista de paquets.

sudo apt-get update

A continuació, instal·leu realment els requisits de Composer. Necessitareu curlper a la descàrrega i php5-cliper a la instal·lació i ús. gitComposer també l'utilitza per baixar els requisits del projecte.

Instal·leu els requisits.

sudo apt-get install curl php5-cli git

Descarrega i instal·la

La instal·lació de Composer és molt senzilla.

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

Que baixa i instal·la Composer com una ordre global, anomenada composer, situada a /usr/local/bin. Obtindreu aquesta sortida.

#!/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

Executeu el següent per provar la instal·lació.

composer

La sortida serà la següent.

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

Usage:
 command [options] [arguments]

Ús

Fitxer JSON

Per utilitzar Composer, necessiteu un fitxer anomenat composer.jsonper indicar a Composer quins requisits té el vostre projecte i quina versió d'aquests requisits cal instal·lar. No creeu això manualment per evitar fer alguna cosa de manera incorrecta: Composer fa el fitxer per vosaltres quan afegiu dependències. També s'afegeixen dependències addicionals automàticament.

Exemple d'ús del compositor

Per utilitzar Composer per a instal·lacions de dependència:

  • Identifiqueu la biblioteca necessària per a l'aplicació.
  • Trobeu una bona biblioteca de codi obert a <Packagist.org>, el repositori de Composer.
  • Tria el paquet que vulguis.
  • S'utilitza composer requireper incloure i instal·lar la dependència.

Inicialització de Slugit

Ara passarem per aquest procés amb una aplicació d'exemple senzilla, que prendrà una frase i la convertirà en una cadena amigable, anomenada slug. S'utilitza amb freqüència per convertir noms de pàgines en URL, per facilitar la generació d'URL i camins. Començarem fent una carpeta per a l'aplicació, anomenada slugit.

mkdir ~/slugit
cd ~/slugit

Cercant a Packagist

Ara seguirem packagist.orgi trobarem un paquet per ajudar a generar llimacs. La cerca sluga Packagist hauria de mostrar alguns d'aquests paquets.

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

Hem de trobar un convertidor string to slug, així que es cocur/slugifyveu bé, amb moltes instal·lacions i estrelles.

Requereix un paquet

Després de triar el paquet, executem composer requireper incloure-lo com a dependència, generar composer.json-lo i instal·lar-lo.

composer require cocur/slugify

Com es veu a la sortida generada, Composer va seleccionar la versió del paquet més recent i la va utilitzar. Comprovació ~/slugit, hauria de veure 2 arxius, composer.locki composer.json, a més d'una carpeta amb el nom vendor.

composer.lock s'utilitza per emmagatzemar informació sobre les versions de paquets i mantenir-les iguals.

La vendorcarpeta s'utilitza per instal·lar les dependències. No introduïu aquesta carpeta en un repositori de Git o GitHub.

Si un projecte que heu baixat ja conté composer.json , feu servir composer installper descarregar-ne les dependències.

Comprensió de les restriccions de versió

Si comproveu què composer.jsoninclou, hauríeu de veure alguna cosa semblant a aquest bloc.

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

Composer té molts formats i limitacions diferents per definir la versió d'un paquet, per permetre flexibilitat juntament amb estabilitat. ^abans que un número de versió faci que aquesta versió sigui el mínim i permet totes les versions següents 2.0.

Normalment no hauríeu de canviar les restriccions de versió, però si ho feu, consulteu la documentació oficial de Composer per obtenir més informació i directrius sobre com funciona tot.

L'script de càrrega automàtica

Composer proporciona un script de càrrega automàtica, que fa que sigui molt més fàcil treballar amb les vostres dependències i espais de noms.

Només cal incloure vendor/autoload.phpal vostre PHP abans de qualsevol instanciació de classe.

Tornem al nostre slugitexemple. Creem un script de prova, anomenat example.php, amb cocur/slugify.

vim example.php

Posa el següent a 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!');

Executeu l'script.

php example.php

Emetrà el text següent:

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

Actualització de dependències del projecte

Per actualitzar les dependències del projecte.

composer update

Si es troben actualitzacions i són compatibles amb la restricció indicada a composer.json, substituirà la versió anterior i actualitzarà composer.lock.

Per actualitzar una o més biblioteques específiques.

composer update vendor1/package1 vendor2/package2

Conclusió

En aquest tutorial, vam passar per la instal·lació, la configuració i un exemple d'ús de Composer per a la gestió de dependències d'aplicacions PHP.

Deixa un comentari

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació