Je sais que ce numéro a été publié à plusieurs reprises, mais pour moi, il semble que ce soit un problème différent.
En effet, cette erreur
Avertissement: require (vendor/autoload.php): échec de l'ouverture du flux: aucun fichier ni répertoire de ce type dans C:\xampp\htdocs\site_web\send_mail.php à la ligne 3
Erreur fatale: require (): Impossible d'ouvrir requis 'vendor/autoload.php' (include_path = 'C:\xampp\php\PEAR') dans C:\xampp\htdocs\site_web\send_mail.php à la ligne 3
apparaît au début de mon code à partir de cette ligne:
require 'vendor/autoload.php';
Donc, je suppose qu’il doit y avoir un fichier /vendor/autoload.php quelque part sur mon ordinateur (j’ai installé composer et exécuté composer require phpmailer/phpmailer
).
Alors, j’ai cherché ce fichier en utilisant: dir /s autoload.php
dans la ligne de commande Windows, et j’en ai trouvé un ici: C:\Windows\SysWOW64\vendor\autoload.php
,
mais pour moi, le dossier syswow64 n'a rien à voir avec autoload.php , je ne vois pas ce qui me manque ici.
Ce qui vous manque, c'est l'exécution de composer install
, qui importera vos packages et créera le dossier du fournisseur, ainsi que le script de chargement automatique.
Assurez-vous que votre chemin relatif est correct. Par exemple, les exemples de scripts dans PHPMailer se trouvent dans examples/
, sous la racine du projet. Le chemin relatif correct pour charger l'autoloader du composeur à partir de là serait donc ../vendor/autoload.php
.
Le fichier autoload.php que vous avez trouvé dans C:\Windows\SysWOW64\vendor\autoload.php
est probablement une installation de composition globale dans laquelle vous placerez généralement des éléments tels que phpcs, phpunit, phpmd, etc.
Si vous obtenez l'erreur aussi quand vous courez
composer install
Il suffit de lancer cette commande en premier
composer dump-autoload
Cette commande nettoiera tous les fichiers compilés et leurs chemins.
Tout d’abord, assurez-vous d’avoir installé le compositeur.
composer install
Si vous avez déjà installé, mettez à jour le compositeur.
composer update
autoload.php
:A) Réponse rapide :
Votre chemin autoload.php est incorrect. c'est à dire. C:\Windows\SysWOW64\vendor\autoload.php
À ce jour: vous devez le changer en: C:\Users\<Windows User Name>\vendor\autoload.php
B) Étapes avec exemple: Nous allons prendre facebook/php-graph-sdk à titre d'exemple; passez à Package Name
si nécessaire.
CMD
name__composer require facebook/graph-sdk
require_once 'C:\Users\<Windows User Name>\vendor\autoload.php';
Secrets
et Access Token
pour votre paquet, etc.C) Autres informations:
L'installation de composer sous Windows définira ce chemin par défaut pour vos paquets. vous pouvez les trouver ici et inclure le chemin de l'autoloader:
C:\Users\<Windows User Name>\vendor
Pour la même question que vous avez demandé; la réponse était ce chemin pour WAMP Server 64 BIT pour Windows .
Ensuite, dans votre PHP Application, changez ceci:
require_once __DIR__ . '/vendor/autoload.php';
À:
require_once 'C:\Users\<Windows User Name>\vendor\autoload.php';
Trouvez votre nom d'utilisateur Windows sous C:\Users\
Avant tout cela, comme indiqué précédemment dans B), vous devez exécuter cette commande:
composer require <package name>
pour facebook php SDK par exemple:
composer require facebook/graph-sdk
Merci d'avoir posé cette question. apprécié car il m’a aidé à résoudre un problème similaire et a mis fin à la rédaction de ce tutoriel simple.
J'ai eu ce chemin dans ma machine:
C:/xampp5.0/htdocs/project-recordando-symfony/project-recordando-symfony
Puis j'ai couru composer install
ou/et composer update
et il a renvoyé cette erreur:
ErrorException ZipArchive::extractTo...
Cette erreur est parce que votre chemin est trop long, j'ai changé pour:
C:/xampp5.0/htdocs/p-symfony/*
et a travaillé!
J'ai pu résoudre le problème en supprimant le compositeur et en le réinstallant correctement. Voici ce que j'ai fait:
J'ai ensuite réussi à faire fonctionner à nouveau le programme d'installation du compositeur. J'ai trouvé ma réponse au bas de ce numéro: https://github.com/composer/composer/issues/5510
lancez composer update
. C'est tout
Tout d’abord, passez en revue route dans index.php
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
dans mon cas, la route ne fonctionnait pas, je devais consulter les annuaires.
Dans votre dossier de projet, le dossier du fournisseur est manquant, vous avez donc cette erreur:
Avertissement: require (vendor/autoload.php): impossible d'ouvrir le flux: aucun fichier ni répertoire de ce type dans
Lorsque vous téléchargez le projet via git, le projet est téléchargé sans le dossier du fournisseur
Vous avez besoin de /vendor
car tous vos packages sont présents, y compris toutes les classes utilisées par Laravel. Le répertoire du fournisseur contient vos dépendances Composer.
La solution est simple, Il suffit d'exécuter cette commande:
composer update --no-scripts
composer update
composer update --no-scripts
Il ignorera l'exécution des scripts définis dans le fichier composer.json
.composer update
Il mettra à jour vos dépendances telles qu'elles sont spécifiées dans le fichier composer.json
.Avec cette commande, vous recréez le dossier du fournisseur dans votre projet, puis votre projet fonctionnera normalement.
Si vous aviez cloné le projet depuis github ou l'aviez de quelqu'un d'autre, alors vous rencontrerez cette erreur. Parce qu'il vous manque le dossier vendor et d'autres fichiers. Le dossier vendor contient les paquetages dépendants de votre projet. Ainsi, les dépendances du paquet sont stockées dans le fichier composer.json
et excluded le dossier en poussant vers github .
Alors, corrigez cette erreur tout simplement,
composer install
vous obtiendrez alors tous les atouts nécessaires à votre projet.
Ce problème est arrivé avec moi lorsque j'ai cloné des projets à partir de git et que je veux courir pour la première fois. J'ai couru compositeur installer dans le répertoire et son travail pour moi.