[解決済み] require(vendor/autoload.php): ストリームを開くのに失敗しました。
質問
この問題は何度も投稿されているようですが、私にとっては別の問題のようです。
確かに、このエラー
Warning: require(vendor/autoload.php): ストリームを開くのに失敗しました。No such file or directory in C:\xampphtdocsite_websend_mail.php on line 3
Fatal error: require(): Failed opening required 'vendor/autoload.php' (include_path='C:\xamppphp') in C:\xampphtdocsite_websend_mail.php on line 3
は、この行から私のコードの先頭に表示されます。
require 'vendor/autoload.php';
ということは、私のコンピュータのどこかに /vendor/autoload.php ファイルがあるのだろう(composer をインストールして
composer require phpmailer/phpmailer
).
で、このファイルを探しました。
dir /s autoload.php
をWindowsのコマンドラインで実行したところ、ここに1つ見つかりました。
C:\Windows\SysWOW64\vendor\autoload.php
,
が、私にとっては syswow64 フォルダには何もありません。 autoload.php 何が足りないのかがわからない。
どうすればいいですか?
足りないのは
composer install
これはパッケージをインポートして vendor フォルダを作成し、autoload スクリプトも一緒に作成します。
相対パスが正しいことを確認してください。たとえば、PHPMailer のサンプルスクリプトは以下の場所にあります。
examples/
したがって、そこから作曲家オートローダーを読み込むための正しい相対パスは、次のようになります。
../vendor/autoload.php
.
で見つけたautoload.phpは
C:\Windows\SysWOW64\vendor\autoload.php
は、おそらくグローバルコンポーザーのインストールで、通常 phpcs, phpunit, phpmd などが置かれる場所です。
composer update
は
ではない
同じことであり、おそらく
ではない
を使用したい。もしあなたのコードが現在のパッケージのバージョンでテストされているのであれば
update
を実行すると問題が発生し、さらなる作業やテストが必要になる可能性があります。
update
特別な理由があり、その意味を正確に理解している場合を除きます。さらに明確にしておくと、おそらくは
composer update
ローカルで使用し、サーバーでは決して使用しないでください。
composerをサーバーで実行できないから使えないという不満をよく見かけます(例:サーバーが共有されていてシェルアクセスができない)。そのような場合、あなたは できる ローカル(そのような制限のない環境)で実行し、生成されたローカルの vendor フォルダを他のすべての PHP スクリプトと一緒にアップロードします。
実行中
composer update
また
を実行します。
composer install
がない場合は
vendor
フォルダを作成し、さらに、すべての
composer.lock
ファイルにタグ付けされたパッケージのバージョンが更新され、これが潜在的に危険です。
同様に、もし現在、あなたが
composer.lock
ファイルを作成した場合 (たとえばプロジェクトにコミットされていない場合) は
composer install
も効果的に実行されます。
composer update
. したがって、この2つの違いを理解することは非常に重要です。
ない
は互換性があります。
また、パッケージの名前をつけるなどして、1つのパッケージを更新することも可能です。
composer update ramsey/uuid
で指定したバージョンを再解決します。
composer.json
をインストールし、vendor フォルダにインストールします。
composer.lock
ファイルを一致させる。この方法は、一般的な
composer update
あるパッケージに対する特定のアップデートが必要な場合。
通常、ライブラリは
ではなく
が含まれます。
composer.lock
そのため、バージョンを修正するのはアプリケーションであり、使用するライブラリではありません。その結果、ライブラリ開発者は、アプリ開発者よりも幅広いホスト環境との互換性を維持することが期待されます。例えば、あるライブラリはLaravel5、6、7、8と互換性がありますが、それを使用するアプリは他の理由でLaravel8を必要とするかもしれません。
Composer 2.0 では、インストールとアップデートの結果に残っていた不一致が解消されました。 アップグレード .
関連
-
[解決済み] [Solved] Fatal error: メンバ関数bind_param()のbooleanに対する呼び出し [重複] [重複
-
[解決済み] 整形されていない数値が発生しました。
-
[解決済み】PHP定数「PHP_EOL」はいつ使うの?
-
[解決済み】空の配列要素を削除する
-
[解決済み】mysqli_result クラスのオブジェクトを文字列に変換できない
-
[解決済み】phpMyAdmin: シークレットパスフレーズ?
-
MacでPHPを実行した際に、メモリサイズが134217728バイトも消費される問題の解決方法について
-
[解決済み】MySQLのカラム数が1行目の値数と一致しない【非公開
-
[解決済み] SSLエラー SSL3_GET_SERVER_CERTIFICATE:証明書の検証に失敗しました。
-
[解決済み】Composerのrequireがメモリ不足になる。PHP Fatal error: 許容メモリサイズ1610612736バイトを使い果たしました。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】phpのob_start()の使い道は?
-
[解決済み】空の配列要素を削除する
-
[解決済み】Xampp ローカルホスト/ダッシュボード
-
[解決済み】 $_SERVER['DOCUMENT_ROOT'] と $_SERVER['HTTP_HOST'] の違いについて]
-
[解決済み】警告:mysql_fetch_array()はパラメータ1がリソースであることを期待、ブール値は[重複]で与えられる]
-
[解決済み] 警告:mysqli_fetch_array()は、パラメータ1がmysqli_resultであることを期待する、オブジェクトはで指定された。
-
[解決済み】PHPのクラスが見つからないが、インクルードされている
-
[解決済み】Wordpressの子テーマのstyle.cssが効かない。
-
[解決済み】mysqli::query(): mysqli をフェッチできない
-
[解決済み] SSLエラー SSL3_GET_SERVER_CERTIFICATE:証明書の検証に失敗しました。