Composer downloaden, installeren en gebruiken op Ubuntu 14.04

Composer is een extreem populaire PHP-beheertool voor afhankelijkheden, die wordt gebruikt om installatie en updates voor projecten gemakkelijker te maken. Het controleert ook welke andere pakketten een project nodig heeft en verkrijgt ze automatisch voor u, met de juiste versie.

In dit document zullen we Composer installeren en gaan gebruiken op een Vultr Ubuntu 14.04 VPS.

Vereisten

  • Een Vultr Ubuntu 14.04 VPS.
  • Een gewone gebruiker met Sudotoegang tot die VPS.

Installatie

Installatie van afhankelijkheid

Allereerst moeten we ervoor zorgen dat onze VPS alle vereisten van Composer met succes heeft geïnstalleerd en werkt.

Werk de pakketlijst bij.

sudo apt-get update

Installeer vervolgens de vereisten van Composer. Je hebt nodig curlvoor het downloaden en php5-clivoor de installatie en het gebruik ervan. gitwordt ook door Composer gebruikt voor het downloaden van projectvereisten.

Installeer de vereisten.

sudo apt-get install curl php5-cli git

Download en installeer

Composer installeren is heel eenvoudig.

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

Die Composer downloadt en installeert als een globaal commando, genaamd composer, in /usr/local/bin. Je krijgt deze output.

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

Voer het volgende uit om de installatie te testen.

composer

De uitvoer is als volgt.

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

Usage:
 command [options] [arguments]

Gebruik

JSON-bestand

Om Composer te gebruiken, hebt u een bestand nodig met de naam composer.jsonComposer welke vereisten uw project heeft en welke versie van die vereisten moet worden geïnstalleerd. Maak dit niet handmatig om te voorkomen dat u iets verkeerd doet - Composer maakt het bestand voor u wanneer u afhankelijkheden toevoegt. Extra afhankelijkheden worden ook automatisch toegevoegd.

Voorbeeld Composer-gebruik

Composer gebruiken voor afhankelijkheidsinstallaties:

  • Identificeer de bibliotheek die nodig is voor de app.
  • Vind een goede, open-sourcebibliotheek op <Packagist.org>, Composer's repository.
  • Kies het gewenste pakket.
  • Gebruik composer requireom de afhankelijkheid op te nemen en te installeren.

Slugit initialiseren

We zullen dit proces nu doorlopen met een eenvoudige voorbeeld-app, die een zin nodig heeft en er een vriendelijke string van maakt, een slug genaamd. Dit wordt vaak gebruikt om paginanamen naar URL's te converteren, om het gemakkelijker te maken om URL's en paden te genereren. We beginnen met het maken van een map voor de app, genaamd slugit.

mkdir ~/slugit
cd ~/slugit

Zoeken op Packagist

We gaan nu op packagist.orgzoek naar een pakket om slakken te genereren. Zoeken naar slugop Packagist zou enkele van deze pakketten moeten tonen.

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

We moeten een string vinden om de slug converter om te zetten, dus cocur/slugifyziet er goed uit, met veel installaties en sterren.

Vereist een pakket

Nadat we het pakket hebben gekozen, draaien we composer requireom het als een afhankelijkheid op te nemen, te genereren composer.jsonen te installeren.

composer require cocur/slugify

Zoals te zien is in de gegenereerde uitvoer, heeft Composer de meest recente pakketversie geselecteerd en gebruikt. Het controleren ~/slugit, moet je 2 bestanden, zie composer.locken composer.json, plus een map met de naam vendor.

composer.lock wordt gebruikt om informatie over pakketversies op te slaan en ze hetzelfde te houden.

De vendormap wordt gebruikt om de afhankelijkheden te installeren. Leg deze map niet vast in een Git-opslagplaats of GitHub.

Als een project dat u hebt gedownload al bevat composer.json , gebruikt u composer installom de afhankelijkheden ervan te downloaden.

Inzicht in versiebeperkingen

Als je controleert wat composer.jsoner in zit, zou je iets moeten zien dat lijkt op dit blok.

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

Composer heeft veel verschillende formaten en beperkingen om de versie van een pakket te definiëren, om flexibiliteit in combinatie met stabiliteit mogelijk te maken. ^vóór een versienummer maakt die versie het minimum en staat alle onderstaande versies toe 2.0.

Normaal gesproken hoeft u de versiebeperkingen niet te wijzigen, maar als u dat wel doet, raadpleegt u de officiële documentatie van Composer voor meer informatie en richtlijnen over hoe het allemaal werkt.

Het autoload-script

Composer biedt een autoload-script, wat het veel gemakkelijker maakt om met uw afhankelijkheden en naamruimten te werken.

Neem gewoon op vendor/autoload.phpin uw PHP voordat u een klasse-instantiation uitvoert.

Terug naar ons slugitvoorbeeld. Laten we een testscript maken, genaamd example.php, met cocur/slugify.

vim example.php

Zet het volgende in 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!');

Voer het script uit.

php example.php

Het zal de volgende tekst uitvoeren:

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

Projectafhankelijkheden bijwerken

Projectafhankelijkheden bijwerken.

composer update

Als er updates worden gevonden die compatibel zijn met de gegeven beperking composer.json, wordt de vorige versie vervangen en geüpdatet composer.lock.

Om een ​​of meer specifieke bibliotheken bij te werken.

composer update vendor1/package1 vendor2/package2

Gevolgtrekking

In deze zelfstudie hebben we installatie, configuratie en een voorbeeld van het gebruik van Composer voor PHP-applicatie-afhankelijkheidsbeheer doorlopen.



Leave a Comment

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Kan AI vechten met toenemend aantal ransomware-aanvallen?

Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek

ReactOS: is dit de toekomst van Windows?

ReactOS: is dit de toekomst van Windows?

ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.

Blijf verbonden via WhatsApp Desktop-app 24 * 7

Blijf verbonden via WhatsApp Desktop-app 24 * 7

WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Hoe AI procesautomatisering naar een hoger niveau kan tillen?

Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

macOS Catalina 10.15.4 Supplement Update veroorzaakt meer problemen dan het oplost

Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

13 Commerciële data-extractietools voor big data

Wat is een logboekbestandssysteem en hoe werkt het?

Wat is een logboekbestandssysteem en hoe werkt het?

Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Technologische singulariteit: een verre toekomst van de menselijke beschaving?

Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

Een inzicht in 26 Big Data-analysetechnieken: deel 1

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

De impact van kunstmatige intelligentie in de gezondheidszorg 2021

AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.