問題タブ [psr-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
554 参照

php - PSR-4 の自動読み込みと名前空間のインポートでクラスが見つからない

いくつかの単体テストで、srcフォルダーの内容とそれらを自動ロードしようとしています。useこれがオートローディング部分ですcomposer.json

usersin src/corefolderというクラスがあります。スクリーンショットを添付。

を使用してクラスをPHP Fatal error: Class 'Meetup\Login\Core\Usersインポートしようとする単体テストでエラーが発生する理由usersuse Meetup\Login\Core\Users

ここに画像の説明を入力 注: ほとんどの場合、私の愚かな見落としです。

0 投票する
1 に答える
222 参照

php - PSR-4 を使用してクラスが見つかりません

以下のように、composer.json ファイルに PSR-4 仕様があります。

ここに画像の説明を入力

上記は私のディレクトリ構造です。私の Core/Config.php ファイルには、名前空間の下にあるクラス Config がありますMyMVC\Core。(問題の例としてConfigクラスを取り上げるだけで、これはすべてのクラスで同じです)。

今、私のConfig/config.phpファイルで、以下のコードを使用しています

しかし、これにより Class Config Not Found というエラーが発生します。を使用すれば問題を解決できますMyMVC\Core\Config;。ただし、Config を明示的に使用しなくても機能するはずです。自動ロードされるはずのフレームワークユーザーによって追加されたファイルが存在する可能性があるためです。

ありがとう

0 投票する
1 に答える
181 参照

php - PSR-4オートローディングを使用したLaravel 4でカスタムクラスが見つからないという奇妙なエラー

私のカスタムクラスで。

ファイル構造:

Composer.json

クラス 'CustomHelpers\API\App' が見つかりません

マニュアルに記載されていることを実行しましたが、 APIフォルダー内にAPPがないため、エラーが表示されるのは奇妙です。私は誰かが私を助けてくれることを願ってのコマンドを使用します.composer dump-autoload

アップデート

0 投票する
1 に答える
73 参照

php - Peridot-php ブラウザで正常に動作しているときにコンソールで致命的なエラーが発生する

私は The Clean Architecture という本のケース スタディを読んで取り組んでいました。考えられるすべての方法を試してみたが、問題を解決できない場合は、現在のコードのリンクを次に示します。

これが問題です

Fatal error Fatal error: Class 'Webloper\CleanPhp\Invoicer\Domain\Entity\Order' not found in C:\xampp\htdocs\cleanphp\specs\domain\service\invoice-factory.spec.php 行 8

そのため、パブリックフォルダーと index.php ファイルを追加して、ブラウザーでの動作を確認し、ベンダーの autoload.php とその動作を確認しました。

そのため、再びベンダーの自動ロードをinvoice-factory.spec.phpファイルに追加しましたが、別のエラーが発生してストリームが見つかりません。

0 投票する
2 に答える
2587 参照

php - 未定義メソッドの呼び出し Composer\\Autoload\\ClassLoader::setPsr4()

複数のサブフォルダーを持つプロジェクトがあります。フォルダの 1 つで、それらはいくつかの「アドオン」です。これらのアドオンにはすべて composer.json と vendor-folder があります。独自のアドオンを作成し、新しいフォルダーを作成して、composer.jsonそのディレクトリに配置したいと思いました。composer install問題なく動作しますが、どういうわけかアドオンをインストールしているときにエラーが発生します

この問題の原因は何ですか? composer dump-autoloadインターネットでこれらのソリューションを見つけたので、私はすでに実行しcomposer global updateましたが、それでも機能しません。サブフォルダーで機能させるために何か特別なことをする必要がありますか?

これは現在、私の composer.json です

それが役立つかどうかはわかりませんがvar_dump、ローダーを実行すると、これが結果になります

その後、$loader->setPsr4メソッドが呼び出され、致命的なエラーが発生します。

奇妙なことに、オートロードclassmapの代わりに使用するとpsr-4、問題なく動作します。

0 投票する
1 に答える
704 参照

php - PHP テストはローカルでは成功するが、Composer、PSR-4 自動ロードを使用する Travis CI では失敗する

これらの単体テストがローカル セットアップを通過するときに CI で失敗する理由を理解するのを手伝ってくれる人はいますか。

リポジトリはhttps://github.com/jabranr/test-ciにあります

テストはhttps://travis-ci.org/jabranr/test-ciにあります

テストは CI で失敗し、次のような致命的なエラーが発生します。PHP Fatal error: Class 'JRI\JabranCI\Exception\FooBarException' not found in /home/travis/build/jabranr/test-ci/test/exception/FooBarExceptionTest.php on line 11

パッケージは PSR-4 オートローディングを使用します。composer.jsonphpunitの構成は次のとおりです。前もって感謝します!

0 投票する
1 に答える
337 参照

php - ルート内でメソッドを使用しているときにSlim 500サーバーエラーが発生しました

だから私はスリムなしで名前空間を試してみましたが、問題なく動作していましたが、スリムでは表示され続けます:

Composer.json:

MainController.php

index.php

メソッドを呼び出そうとした方法:

1 Routes.php

また

Routes.php

ディレクトリ構造:

ここに画像の説明を入力

たぶん、何かが欠けているか、何かと競合している可能性があります。さまざまなサイトで多くの回答を試しましたが、うまくいきませんでした。それが、ここに投稿する理由です。

0 投票する
1 に答える
1064 参照

php - フレームワークなしで PSR-4 Composer を理解する

私は PSR-4 がどのように機能するかを理解し、学ぼうとしています。なぜなら、私はこの標準である小さなアプリでリファクタリングするのが好きだからです。

いくつかのマニュアルとスタック オーバーフローの投稿によると、私の構造とファイルは問題ありません。

ResellerApi.php コンテンツ:

私のcomposer.json(グローバル)

そして、私の仕事のディレクトリ /reseller.php で

PHPstorm はエラーを表示しません。

しかし、phpショーエラー...

編集: ファイル vendor/composer/autoload_psr4.php で composer dump-autoload (または composer update) を実行した後

あまりにも多くのマニュアルに例が示されていますが、Laravel、Sympony が混在しています ... PSR-4 を理解するのが好きです ...