私はComposerを初めて使い、作者でクラスを自動読み込みするのに本当に苦労しています。次のプロセスでは何が欠けていますか?Composerが必要なクラスを自動読み込みしない
私はフォルダが含ま私のPHPパッケージをインストール - このように(ドキュメントルートの外にある、私はそれが重要なのかはわからない):それは、それが正常に完了し、私はプロジェクトを確認述べ
composer require monolog\monolog
私のベンダーフォルダに追加されました。
マイ全体composer.jsonファイルは次のようになります。
{
"require": {
"monolog/monolog": "^1.22"
}
}
私の全体のテストファイルは次のようになります。
<?php
require_once "vendor/autoload.php";
use Monolog\Logger;
$log = new Logger("name");
?>
そして私は、ページのロード時に、私はこのエラーを取得:
をFatal error: Uncaught Error: Class 'Monolog\Logger' not found in C:\Dropbox\Projects\Web\Websites\Instamation\wwwroot\qbtest.php:6 Stack trace: #0 {main} thrown in C:\Dropbox\Projects\Web\Websites\Instamation\wwwroot\qbtest.php on line 6
このファイルには、vendor/autoload.phpファイルにはエラーが含まれていません。
私はそのまま作曲家でこれらのコマンドを実行しようとしました:
composer update
composer dump-autoload -0
私も異なるパッケージでそれを試してみたと私は同じエラーを取得するので、私はそれが何を持っていないかなり確信していますモノログパッケージと関連付ける
ここにステップがありますか? jsonファイルで自動ロードするクラスを手動で定義する必要はありませんが、作者でそれらを必要とするのですか?
編集1:
要求されたとして、ここで私の異なるファイルへのパスです。テストページへ
パス:(ドキュメントルート外のが、私のパスが含ま中)composer.jsonファイルへ
C:\Dropbox\Projects\Web\Websites\Instamation\wwwroot\qbtest.php
パス:
C:\Dropbox\Projects\Web\Websites\Instamation\wwwincludes\composer.json
マイベンダーのフォルダはここにある:
C:\Dropbox\Projects\Web\Websites\Instamation\wwwincludes\vendor\
私のベンダーフォルダ内には、次のフォルダとファイルがあります。
bin/
composer/
monolog/
psr/
autoload.php
。 –
@AlexBlexありがとうございます。あなたがリクエストした情報を追加しました。何が見えますか? – dallin