Ich versuche, die Coinbase PHP-API zu installieren, aber dafür ist Composer erforderlich:
https://github.com/coinbase/coinbase-php
Ich suche nach einer universellen PHP-Lösung (möglicherweise einer Funktion), mit der ich Composer-Pakete direkt auf meinem Server installieren kann, ohne Composer verwenden zu müssen.
Ich denke, die Entwickler von Composer glauben, dass sie Menschen helfen, aber tatsächlich gibt es Tausende von Anfängerentwicklern, die durch die "Composer-Barriere" daran gehindert werden, Webentwicklung zu lernen.
Es wäre wirklich hilfreich, wenn es eine flexible Lösung oder einen Ansatz gäbe, bei dem wir ohne Composer installieren könnten. Wie kann ich das machen?
Bitte antworten Sie nicht mit einem sarkastischen Kommentar . Es gibt Leute, die Composer nicht verwenden möchten, und ich verstehe nicht, warum wir für die Webentwicklung in eine bestimmte Software von Drittanbietern getrieben werden sollten.
quelle
include
die Dateien.Antworten:
Die
composer.json
Datei listet die Abhängigkeiten auf. In Ihrem Beispiel:Sie müssen dann die entsprechenden Pakete auf der Packagist- Site finden. Wiederholen Sie den gleichen Vorgang für jede Abhängigkeit: Suchen Sie zusätzliche Abhängigkeiten in den entsprechenden
composer.json
Dateien und suchen Sie erneut.Wenn Sie endlich eine vollständige Liste der erforderlichen Pakete haben, müssen Sie sie nur noch einzeln installieren. Zum größten Teil geht es nur darum, die Dateien irgendwo in Ihrem Projektverzeichnis abzulegen. Sie müssen aber auch sicherstellen, dass PHP die benötigten Klassen finden kann. Da Sie den Auto-Loader von Composer nicht verwenden, müssen Sie ihn Ihrem eigenen benutzerdefinierten Autoloader hinzufügen. Sie können die Informationen aus den jeweiligen
composer.json
Dateien herausfinden , z.Wenn Sie keinen Klassen-Auto-Loader verwenden, müssen Sie die einzelnen
require_once
Anweisungen herausfinden . Sie werden wahrscheinlich viel Versuch und Irrtum brauchen, da es den meisten Autoren der Bibliothek egal ist, dies zu dokumentieren.Auch und nur für den Fall, dass diesbezüglich Verwirrung herrscht:
Composer ist nicht perfekt und nicht für alle Anwendungsfälle geeignet. Wenn es jedoch darum geht, eine Bibliothek zu installieren, die darauf basiert, ist es zweifellos die beste Alternative und eine recht anständige.
Ich habe andere Antworten überprüft, die nach meinen kamen. Sie fallen meist in zwei Kategorien:
Sofern mir nichts fehlt, geht keiner von ihnen auf die vom OP geäußerten Beschwerden ein:
quelle
Sie können https://php-download.com/ ausprobieren, um die meiste Zeit die Abhängigkeit zusammen mit dem
vendor
Ordner herunterzuladen . Es verspricht Komponist nicht erforderlich. Versuchte es selbst. Es findet und erstellt alle erforderlichen Ordner und komprimiert sie zum Download. Funktioniert perfekt !!quelle
Ich verwende Shared Hosting für eine Website und kann dort keine Befehle ausführen. Abgesehen davon, dass Composer über eine PHP-Skriptanforderung ausgeführt wird, die ich über einen Browser anfordere, verwende ich normalerweise diesen Workflow:
Erstellen Sie in einer Datei composer.json den folgenden Inhalt
Navigieren Sie zu dem Verzeichnis mit der Shell Ihrer Wahl (Bash, Git-Bash, Cmd, Windows Bash).
php composer.phar update
in dein PHP-Projekt aufnehmen, in das du deine Bibliotheken lädst (ändere den Pfad dahin, wo du das Herstellerverzeichnis hochgeladen hast, damit es diese Autoload-Datei enthält)
Auf diese Weise profitieren Sie vom Abhängigkeitsmanagement und müssen nicht alle Unmengen von Dateien manuell einschließen und alle Abhängigkeiten manuell herunterladen. Das Aktualisieren ist genauso einfach wie das Eingeben
php composer.phar update
und anschließende Ersetzen des Herstellerverzeichnisses auf Ihrem Server durch das ein neues.quelle
Ich musste dies für einen FTP-Server tun, auf den ich keinen SSH-Zugriff hatte. Die hier aufgeführte Site hat funktioniert. Dann wurde mir klar, dass Sie einfach eine Composer-Installation auf Ihrem eigenen Server durchführen können (unter Verwendung der PHP-Version Ihres Ziels) und dann alle Dateien kopieren können.
quelle
Dies ist nicht die ultimative Lösung, aber für mich war es in den meisten Fällen eine große Hilfe: https://github.com/Wilkins/composer-file-loader
Ich weiß, dass die Frage alt ist, aber ich hoffe, sie wird jemandem helfen.
quelle
Eine alternative Lösung, die für mich funktioniert hat (da der PHP-Download nicht funktioniert hat), kann durch Erstellen eines eigenen kleinen lokalen Composer-Downloaders erfolgen.
c:\temp
und geben Sie einfach die Composer-Abhängigkeit ein, zum Beispiel:composer require league/oauth2-client
c:\temp
mit einem FTP-Programm aus Ihrem Ordner auf Ihren Webhostrequire("vendor/autoload.php");
quelle