J'essaie d'installer l'API PHP Coinbase mais cela nécessite Composer:
https://github.com/coinbase/coinbase-php
Je recherche une solution PHP universelle (peut-être une fonction) pour me permettre d'installer des packages de compositeur directement sur mon serveur, sans avoir à utiliser Composer.
Je pense que les développeurs de Composer pensent qu'ils aident les gens, mais en fait, il y a des milliers de développeurs débutants qui sont exclus de l'apprentissage du développement Web par la «barrière du compositeur».
Cela aiderait vraiment s'il y avait une solution flexible ou une approche où nous pourrions installer sans Composer? Comment puis-je faire ceci?
Veuillez ne pas répondre avec un commentaire sarcastique . Il y a des gens qui ne veulent pas utiliser Composer et je ne vois pas pourquoi nous devrions être regroupés dans un logiciel tiers spécifique pour faire du développement Web.
la source
include
les fichiers.Réponses:
Le
composer.json
fichier répertorie les dépendances. Dans votre exemple:Vous devez ensuite trouver les packages correspondants sur le site de packagist . Répétez le même processus pour chaque dépendance: recherchez des dépendances supplémentaires dans leurs
composer.json
fichiers correspondants et effectuez une nouvelle recherche.Lorsque vous avez enfin une liste complète des packages requis, il vous suffit de les installer tous un par un. Pour la plupart, il s'agit simplement de déposer les fichiers quelque part dans le répertoire de votre projet. Mais vous devez également vous assurer que PHP peut trouver les classes nécessaires. Puisque vous n'utilisez pas le chargeur automatique de Compositeur, vous devez les ajouter à votre propre chargeur automatique personnalisé. Vous pouvez trouver les informations des
composer.json
fichiers respectifs , par exemple:Si vous n'utilisez pas de chargeur automatique de classe, vous devrez comprendre les
require_once
instructions individuelles . Vous aurez probablement besoin de beaucoup d'essais et d'erreurs car la plupart des auteurs de bibliothèques ne se soucieront pas de documenter cela.Aussi, et juste au cas où il y aurait confusion à ce sujet:
Composer n'est pas parfait et ne convient pas à tous les cas d'utilisation, mais lorsqu'il s'agit d'installer une bibliothèque qui en dépend, c'est sans aucun doute la meilleure alternative et c'est une assez bonne alternative.
J'ai vérifié d'autres réponses après la mienne. Ils appartiennent principalement à deux catégories:
Sauf si je manque quelque chose, aucun d'entre eux ne répond aux plaintes exprimées par le PO:
la source
Vous pouvez essayer https://php-download.com/ qui peut vous aider à télécharger toutes les dépendances la plupart du temps avec le
vendor
dossier. Il promet que le compositeur n'est pas requis. Je l'ai essayé moi-même. Il trouve et crée tous les dossiers requis et le zippe pour le téléchargement. Fonctionne parfaitement !!la source
J'utilise l'hébergement mutualisé pour un site Web et je ne peux pas y exécuter de commandes. En plus d'exécuter composer via une requête de script php que je demande via un navigateur, j'utilise généralement ce flux de travail:
créer un fichier composer.json y coller le contenu suivant
Naviguez jusqu'au répertoire avec le shell de votre choix (bash, git-bash, cmd, windows bash)
php composer.phar update
inclure dans votre projet php où vous chargez vos bibliothèques (modifiez le chemin vers l'endroit où vous avez téléchargé le répertoire du fournisseur afin qu'il inclue ce fichier de chargement automatique)
De cette façon, vous bénéficiez de la gestion des dépendances et vous n'avez pas besoin d'inclure manuellement tous les millions de fichiers et de télécharger toutes les dépendances manuellement, et les mettre à jour est tout aussi simple que de taper
php composer.phar update
puis de remplacer le répertoire fournisseur sur votre serveur par le nouveau.la source
J'ai dû faire cela pour un serveur FTP auquel je n'avais pas accès SSH. Le site répertorié ici a fonctionné, puis j'ai réalisé que vous pouviez simplement faire une installation de compositeur sur votre propre serveur (en utilisant la version PHP de votre cible), puis copier tous les fichiers.
la source
Ce n'est pas la solution ultime mais pour moi, cela a été d'une grande aide pour la plupart des cas: https://github.com/Wilkins/composer-file-loader
Je sais que la question est ancienne, mais j'espère qu'elle aidera quelqu'un.
la source
Une solution alternative qui a fonctionné pour moi (puisque php-download était en panne) peut être faite en créant votre propre petit téléchargeur de compositeur local.
c:\temp
et tapez simplement la dépendance du composeur, par exemple:composer require league/oauth2-client
c:\temp
dossier sur votre hébergeur à l'aide d'un programme FTPrequire("vendor/autoload.php");
la source