私はこの問題が何度も掲載されていることを知っていますが、私にとってはそれは別の問題のようです。
確かに、このエラー
警告:require(vendor/autoload.php):ストリームを開けませんでした:3行目のC:\ xampp\htdocs\site_web\send_mail.phpにそのようなファイルやディレクトリはありません
致命的なエラー:require():3行目のC:\ xampp\htdocs\site_web\send_mail.phpで必要な 'vendor/autoload.php'(include_path = 'C:\ xampp\php\PEAR')を開けませんでした
この行から私のコードの先頭に表示されます。
require 'vendor/autoload.php';
だから、私は自分のコンピュータのどこかに/vendor/autoload.phpファイルがなければならないと思います(私はcomposerをインストールしてcomposer require phpmailer/phpmailer
を実行しました)。
それで、私はこのファイルをWindowsコマンドラインで:dir /s autoload.php
を使って探しました、そして、それをここで見つけました:C:\Windows\SysWOW64\vendor\autoload.php
、
しかし、私にとっては、 syswow64 フォルダには autoload.php とは何の関係もありません。
あなたが欠けているものはcomposer install
を実行しています、それはあなたのパッケージをインポートして、そして自動ロードスクリプトと一緒にベンダフォルダを作成します。
相対パスが正しいことを確認してください。たとえば、PHPMailerのスクリプト例はプロジェクトルートの下のexamples/
にあるため、そこから作曲家オートローダをロードするための正しい相対パスは../vendor/autoload.php
になります。
C:\Windows\SysWOW64\vendor\autoload.php
で見つけたautoload.phpはおそらくグローバルな作曲家のインストールです - そこには通常phpcs、phpunit、phpmdなどのものを置くでしょう。
composer update
は同じものではありません、そしておそらくあなたが使用したいものが not ではありません - あなたのコードが現在のパッケージバージョンでテストされるならupdate
を実行することはさらなる作業とテストを必要とするかもしれません特別な理由がない限り、update
を実行してください。さらに明確にするために - あなたはおそらく決してあなたのサーバ上で決して決してローカルにcomposer update
を実行するべきではありません。
私はよく彼らが彼らのサーバーでそれを実行することができないので人々がcomposerを使うことができないという苦情を見ます(例えばそれは共有されていて、彼らはシェルアクセスを持っていないので)。その場合、 can はまだcomposerを使うことができます:それをローカルで実行し(そのような制限がない環境)、それが生成するローカルベンダーフォルダを他のすべてのPHPスクリプトと一緒にアップロードします。
実行時にもエラーが発生した場合
composer install
最初にこのコマンドを実行してください
composer dump-autoload
このコマンドはすべてのコンパイル済みファイルとそのパスをクリーンアップします。
@Bashirはほとんど役に立ちましたが、必要でした。
composer update --no-scripts
まず、作曲家がインストールされていることを確認してください。
composer install
すでにインストールしている場合は、作曲家を更新してください。
composer update
autoload.php
設定:A)クイックアンサー:
あなたのautoload.phpパスが間違っています。すなわち。 C:\Windows\SysWOW64\vendor\autoload.php
日付:あなたはそれを変更する必要があります:C:\Users\<Windows User Name>\vendor\autoload.php
B)例題の手順:例として facebook/php-graph-sdk を取ります。必要に応じてPackage Name
に変更してください。
CMD
composer require facebook/graph-sdk
require_once 'C:\Users\<Windows User Name>\vendor\autoload.php';
Secrets
とAccess Token
を定義します。C)詳細:
Windowsにcomposerをインストールすると、あなたのパッケージにこのデフォルトのパスが設定されます。そこにそれらを見つけることができ、オートローダのパスを含めることができます。
C:\Users\<Windows User Name>\vendor
あなたが尋ねたのと同じ質問について。答えは WAMP Server 64 BIT for Windows に対するこのパスでした。
それから、PHPアプリケーションでこれを変更します。
require_once __DIR__ . '/vendor/autoload.php';
に:
require_once 'C:\Users\<Windows User Name>\vendor\autoload.php';
Windowsのユーザー名を検索C:\Users\
の下
この前に、B)で先に指摘したように、このコマンドを実行する必要があります。
composer require <package name>
例えばFacebookのPHP SDKの場合:
composer require facebook/graph-sdk
この質問をありがとうございました。それは私が同様の問題を解決するのを助けて、この簡単なチュートリアルを書くのを終えたので高く評価しました。
プロジェクトをGithubから複製した場合、または他の場所から入手した場合は、このエラーが発生します。これは、 vendorフォルダ や他のファイルが見つからないためです。 vendorフォルダ にはあなたのプロジェクトに依存するパッケージが含まれています。パッケージの依存関係はcomposer.json
ファイルに保存され、フォルダーは exclude while Githubにプッシュされました 。
単に実行することでこのエラーを修正します。
composer install
そうすれば、プロジェクトに必要なすべての資産を手に入れることができます。
私は自分のマシンにこのパスを持っていました:
C:/xampp5.0/htdocs/project-recordando-symfony/project-recordando-symfony
それから私はcomposer install
または/およびcomposer update
を実行しました、そしてそれはこのエラーを返しました:
ErrorException ZipArchive::extractTo...
そのエラーはあなたのパスが長すぎるためです、私は変更しました:
C:/xampp5.0/htdocs/p-symfony/*
そして働いた!
まず、index.php内のルートを確認します。
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
私の場合はルートがうまくいかなかったので、ディレクトリを見直す必要がありました。
私は作曲家を削除し、適切な方法で再インストールすることで解決することができました。これが私がしたことです:
それから作曲家のインストールを再開することができました。この号の最後に私の答えが見つかりました: https://github.com/composer/composer/issues/5510
composer update
を実行します。それでおしまい
プロジェクトフォルダーにベンダーフォルダーがないため、このエラーが発生しました。
警告:require(vendor/autoload.php):ストリームを開けませんでした:そのようなファイルまたはディレクトリはありません
gitを使用してプロジェクトをダウンロードすると、プロジェクトはvendor folderなしでダウンロードされます
Laravelが使用するすべてのクラスを含むすべてのパッケージがそこにあるため、/vendor
が必要です。ベンダーディレクトリには、Composer依存関係が含まれています。
解決策は簡単ですこのコマンドを実行するだけです:
composer update --no-scripts
composer update
composer update --no-scripts
composer.json
ファイルで定義されたスクリプトの実行をスキップします。composer update
composer.json
ファイルで指定されている依存関係を更新します。このコマンドを使用すると、プロジェクトでベンダーフォルダーを再作成し、その後、プロジェクトは正常に動作し始めます。
この問題は私がgitからプロジェクトを複製して初めて実行したいときに起こりました。私はそのディレクトリでcomposer installを実行し、その作業を自分のために行いました。