Bonjour.

Dans presque toutes les sources pour PHP, il y a un répertoire COMMANDS et des fichiers composer.*

C'est quoi, c'est un Framework?

Je m'attendais à quelque chose de plus simple.

Le seul que je trouve selon mes attentes, c'est la Gestion de Membres en PHP, mais, les autres comme Auth PHP, il y a ces fichiers là.

Quelqu'un peut-il m'éguiller sur le sujet de ces fichiers et répertoires?

10 réponses


Hello :)

Alors composer c'est une librairie PHP qui est un peut l'équivalent de NPM pour nodeJS, il gère le téléchargement de packages et il intègre aussi un autoloader

C'est tout simple, suffit d'installer composer, puis dans le terminal à la racine du projet faire composer init puis composer install et enfin composer dump-autoload et c'est plié, pas besoin de faire un autoloader c'est composer qui s'en charge

Dan H
Auteur

J'utilise un hébergeur et ce module n'y est pas.
Alors, tous les tutos et sources qui sont ici qui utiliser COMPOSER, je ne pourais pas les utiliser.
C'est bien ça?

Tout dépend, si c'est un serveur et que tu as full access, la oui, si non, non. 😄
Ce que tu peux faire, c'est les contacter et leur poser la question.

Dan H
Auteur

Dans Terminal, j'ai accès.

ça me dit : create à composer.json file

J'ai jamais utiliser cette section de mon hébergeur concernant le terminal.

Ha oui, il est installé composer.

Je viens de faire composer init et là, ça attends que je fasse quelque chose pour créer composer.json configuration.

Dan H
Auteur

Ok, il y a un fichier composer.json dans les sources ici et je dois utiliser ça.

Alors, j'ai rien à faire de plus avec le terminal?

Alors faudra éditer ton composer.json (vim compooser.json ou nano composer.json, si tu sais utiliser vim tant mieux, sinon utilises nano c'est plus facile à utiliser), tu indiques le dossier source pour l'autoload (par défaut je crois que c'est src) dans la section autoload->psr-4 ensuite tu fais composer install, ça va te créer un fichier composer.lock, t'en occupes pas c'est pour vérrouiller les version, et tu aura un dossier vendor, en gros c'est la que composer va caler les paquets que tu installes

Ou alors tu arranges tout ton projet pour la config par défaut de composer (depuis le terminal tu fais un cat composer.json ça va t'afficher la config composer et tu adaptes :p)

Après le plus simple ce serait de prendre un hebergement Docker, comme ça tu fais toute ta config en local et tu pousses en prod

Tu n'es pas obligé d'avoir un hébergement spécial. Tu peux installer les dépendances en local avec composer (cf https://grafikart.fr/tutoriels/composer-480) ce qui créera un dossier vendor à la racine de ton projet que tu pourras envoyer en ligne comme tes autres fichiers PHP.

Pour le conseil de @popotte, je pense que docker est un poil trop avancé par rapport à la problématique là.

Dan H
Auteur

Bien apprécié vos réponse, merci.

Ça rapport avec le répertoire COMMANDS des sources ici ?
A chaque projet comme /public_html/gestionmembres/.
je dois refaire le composer.json dans le répertoire de tout mes projets?

J'utilise un hébergeur commercial; alors, c'est plus simple de faire mes trucs là.

Dan H
Auteur

J'essaies plus d'utiliser PHP sans être obligé d'utiliser des "dépendances" quelconque autre que PHP, JS et MYSQL. Comme par exemple: "Gestion des membres". Faut que je puisse rendre portable pour un autre hébergeur si je dois déménager. Je n'avais pas vu que la plupart des sources utilisent des dépendances.