Composer ist ein Abhängigkeitsmanagement-Tool für PHP. Sie können damit Codebibliotheken deklarieren, von denen Ihr Projekt abhängt, und diese für Sie in Ihrem Projekt installieren.
Abhängigkeitsverwaltung
Composer ist kein Paketmanager. Ja, es handelt sich um „Pakete“ und „Bibliotheken“, aber es wird pro Projekt verwaltet, mit Installationen in einem Verzeichnis innerhalb Ihres Projekts (z. B. beim Anbieter). Standardmäßig wird nichts global installiert. Es handelt sich also lediglich um ein Abhängigkeitsmanagement.
Diese Idee ist nicht neu, Composer ist stark von Nodes npm und Rubys Bundler inspiriert. Zu diesem Zeitpunkt gab es kein vergleichbares Tool für PHP.
Composer wird das Problem folgendermaßen für Sie lösen:
Sie haben ein Projekt, das von mehreren Bibliotheken abhängt.
Einige dieser Bibliotheken sind von anderen Bibliotheken abhängig.
Sie erklären, worauf Sie angewiesen sind.
Composer ermittelt, welche Paketversionen installiert werden müssen, und installiert sie (lädt sie in Ihr Projekt herunter).
Abhängigkeiten deklarieren
Nehmen wir an, Sie erstellen ein Projekt und benötigen eine Bibliothek für die Protokollierung. Sie entscheiden sich für den Monolog. Um es Ihrem Projekt hinzuzufügen, müssen Sie lediglich eine Composer.json-Datei erstellen, die die Abhängigkeiten des Projekts beschreibt.
{ "require": { "monolog/monolog": "1.2.*" } }
Wir müssen nur darauf hinweisen, dass unser Projekt ein Monolog/Monolog-Paket erfordert, jede Version ab 1.2.
Systemanforderungen
PHP 5.3.2+ oder höher ist erforderlich, um Composer auszuführen. Einige sensible PHP-Einstellungen und Kompilierungsflags sind ebenfalls erforderlich, aber das Installationsprogramm gibt bei Inkompatibilitäten eine Warnung aus.
Wir installieren das Paket direkt von der Quelle, anstatt einfach die ZIP-Datei herunterzuladen. Sie benötigen git , svn oder hg , abhängig von dem Versionsverwaltungssystem, in das Sie das Paket laden.
Composer ist plattformübergreifend und wir bemühen uns, dass es auf Windows-, Linux- und OSX-Plattformen gleichermaßen gut läuft.
Installation unter Linux/Unix
Teilinstallation
Um Composer wirklich zu bekommen, müssen wir zwei Dinge tun. Installieren Sie zuerst Composer (dies bedeutet wiederum, dass es in Ihr Projekt heruntergeladen wird):
curl -sS https://getcomposer.org/installer | php
Hinweis: Wenn die obige Methode aus irgendeinem Grund fehlschlägt, können Sie Composer auch über PHP herunterladen und installieren:
php -r "readfile('https://getcomposer.org/installer');" | php
Dadurch werden einige PHP-Einstellungen überprüft und dann „composer.phar“ in Ihr Arbeitsverzeichnis heruntergeladen. Dies ist die Composer-Binärdatei. Dabei handelt es sich um ein PHAR-Paket (PHP-Archiv), ein PHP-Archivformat, das Benutzern hilft, einige Vorgänge in der Befehlszeile auszuführen.
Sie können das Composer-Installationsverzeichnis über die Option --install-dir angeben (es kann ein absoluter oder relativer Pfad sein):
curl -sS https://getcomposer.org/installer | php -- --install-dir=bin
Zur globalen Installation
Sie können diese Datei überall platzieren. Wenn Sie es im PATH-Verzeichnis Ihres Systems ablegen, können Sie global darauf zugreifen. Auf Unix-ähnlichen Systemen können Sie es sogar ohne das PHP-Präfix verwenden.
Sie können diese Befehle ausführen, um den Composer-Aufruf global in Ihrem System zu veranlassen:
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
Hinweis: Wenn der Einspruchsbefehl aufgrund von Berechtigungen fehlschlägt, versuchen Sie bitte mit sudo erneut, mv darauf auszuführen Zeile Reihenfolge. Jetzt können Sie Composer verwenden, indem Sie einfach den Composer-Befehl ausführen, ohne php Composer.phar einzugeben.
Globale Installation (unter OSX über Homebrew)
Composer ist Teil des Homebrew-PHP-Projekts.
brew update brew tap josegonzalez/homebrew-php brew tap homebrew/versions brew install php55-intl brew install josegonzalez/php/composer
Installation unter Windows
Verwenden Sie das Installationsprogramm
Dies ist der einfachste Weg, Composer auf Ihrem Computer zu installieren.
Laden Sie Composer-Setup.exe herunter und führen Sie es aus. Dadurch wird die neueste Version von Composer installiert und die Systemumgebungsvariablen festgelegt, sodass Sie den Composer-Befehl direkt in jedem Verzeichnis verwenden können.
Manuelle Installation
Legen Sie die Systemumgebungsvariable PATH fest und führen Sie den Installationsbefehl aus, um die Datei „composer.phar“ herunterzuladen:
C:\Users\username>cd C:\bin C:\bin>php -r "readfile('https://getcomposer.org/installer');" | php
Hinweis: Wenn Sie einen Lesedateifehler erhalten Bitte verwenden Sie den http-Link oder aktivieren Sie php_openssl.dll in php.ini. Erstellen Sie eine neue Datei Composer.bat im selben Verzeichnis wie Composer.phar:
C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat
Schließen Sie das aktuelle Befehlszeilenfenster und öffnen Sie ein neues Befehlszeilenfenster zum Testen:
C:\Users\username>composer -V Composer version 27d8904
Verwenden Sie Composer
Jetzt verwenden wir Composer, um die Abhängigkeiten des Projekts zu installieren.
Um Abhängigkeiten aufzulösen und herunterzuladen, führen Sie bitte den Installationsbefehl aus:
php composer.phar install
Wenn Sie eine globale Installation durchführen und sich keine Phar-Datei im aktuellen Verzeichnis befindet, verwenden Sie bitte stattdessen den folgenden Befehl :
composer install
In Fortsetzung des obigen Beispiels wird monolog in das Verzeichnis Vendor/monolog/monolog heruntergeladen.
Automatisches Laden
Zusätzlich zum Herunterladen der Bibliothek bereitet Composer auch eine automatische Ladedatei vor, mit der alle Klassendateien in der von Composer heruntergeladenen Bibliothek geladen werden können. Um es zu verwenden, müssen Sie lediglich die folgende Codezeile zur Bootstrap-Datei Ihres Projekts hinzufügen:
require 'vendor/autoload.php';
Jetzt können wir Monolog verwenden!