問題タブ [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 に答える
1244 参照

laravel - サブディレクトリを持つ PSR-4 名前空間

私の Laravel アプリケーションと PSR-4 オートローディングに問題があります。このような名前空間に複数の「サブディレクトリ」構造を持つことができると読みました...

ベンダー名\アプリケーション名\(サブディレクトリ)\クラス名

基本的に、私は自分のユーザーリポジトリを次のように持っています...

すべて名前空間Acme\Repositoriesがありますが、このディレクトリ構造が必要です...

しかし、ユーザーリポジトリとインターフェイスをフォルダーに移動すると、UserRepositoryクラスが見つかりませんか?

ここで名前空間について本当に単純なことを理解していないと確信していますか?

編集

私が求めているのはUserRepository、さまざまなリポジトリを別のリポジトリに保持するために追加のディレクトリを作成する方法だと思います。たとえば、OrderRepositories ですか?

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

composer-php - PSR-4 について

次のようなファイル構造があります。

Composer を使用して PSR-4 自動読み込みを使用しようとしています。このコード:

エラーが表示されます:Fatal error: Class 'Acme\Universal' not found in ...

このスニペットを で使用する場合composer.json:

しかし、私が使用する場合

すべて正常に動作します。アクセスすることもできます

ファイルcomposer installを変更するたびに実行したことに注意してください。composer.json

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

php - PSR-4 オートローディングは、カスタム ライブラリの composer でどのように機能しますか?

PHP の名前空間がどのように機能するかについての理解に基づいて、次のディレクトリ構造を使用します。

PSR-4 仕様によると、完全修飾クラス名の形式は次のとおりです。

質問1:

上記のディレクトリ構造から、以下の仮定は正しいですか?

  • NamespaceName = MyCompany
  • SubNamespaceNames = ユーティリティ | 芯
  • クラス名 = ロガー | ユーザー

質問2:

私のbootstrap.phpファイルに次のものが含まれている場合:

composer.jsonの「autoload」セクションを構成して、MyCompany ディレクトリ内のクラスを自動ロードするにはどうすればよいですか? bootstrap.php で Logger のインスタンスを作成できるように

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

php - Composer クラスマップと非標準拡張子のファイルのロード

composer classmap機能を使用してファイルをロードする場合、または ? などの非標準の拡張子を持つ PHP ファイルをロードできますmyFileName.stubmyFileName.foo?

現在、それらをロードしていないようです。

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

php - Composer を使用してローカル リポジトリから php クラスをロードする方法は?

Php と composer は初めてです. composer を使用して Php クラスに別のモジュールにアクセスしたいです. これは私の基本的なプロジェクト構造です (2 つのモジュール共通とワーカー) index.php

共通/ベンダー/キャンバス/test.php

共通/composer.json

worker/composer.json

worker/tempcaller.php

psr-0 またはリポジトリでもそれを行うことができません。これを行う方法はありますか?