Hintergrund
Es ist hilfreich zu wissen, dass es zwei Möglichkeiten gibt, Composer zu installieren (und zu verwenden): lokal als Datei in Ihrem Projektverzeichnis oder global als systemweite ausführbare Datei.
Die lokale Installation von Composer bedeutet einfach, dass Sie eine Datei herunterladen ( composer.phar- das ist a PHP-Archiv ) in Ihr Projektverzeichnis . Sie müssen es für jedes Projekt herunterladen, für das Composer erforderlich ist.
Wie eine normale PHP-Datei, die Sie in der Befehlszeile ausführen möchten, müssen Sie sie mit PHP ausführen:
php composer.phar update
Was sagt im Grunde die phpausführbare Datei , die Datei auszuführen composer.pharmitupdate als Argumente.
Wenn Sie es jedoch global installieren , können Sie Composer selbst ausführbar machen, sodass Sie es ohne PHP aufrufen können (und es nicht für jedes Projekt herunterladen müssen). Mit anderen Worten, Sie können Komponisten wie folgt verwenden:
composer update
Da Sie ausführen php composer.phar updateund den Fehler erhalten Could not open input file: composer.phar, haben Sie wahrscheinlich nichtcomposer.phar in Ihrem aktuellen Verzeichnis.
Lösung
Wenn Sie Composer global installiert haben, führen Sie einfach composer updatestatt aus php composer.phar update.
Wenn Sie Composer noch nicht installiert haben, laden Sie die PHAR mit dem folgenden Befehl herunter:
curl -sS https://getcomposer.org/installer | php
Dadurch wird das Installationsprogramm heruntergeladen und mit ausgeführt php. Das Installationsprogramm lädt das eigentliche Composer-PHAR in Ihr aktuelles Arbeitsverzeichnis herunter und macht es ausführbar.
Um Composer global zu installieren (ich empfehle dies), kopieren Sie die Datei an einen Speicherort in Ihrem PATH. Der genaue Speicherort ist je nach Betriebssystem und Setup unterschiedlich. Weitere Informationen finden Sie unter https://getcomposer.org/doc/00-intro.md#globally .
Persönlich bevorzuge ich die Installation von Composer in meinem Home-Verzeichnis, damit ich sudodie composerausführbare Datei nicht installieren oder aktualisieren muss (was ein Sicherheitsrisiko darstellen kann). Unter Linux verwende ich den folgenden Befehl:
mv composer.phar ~/.local/bin/composer