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

model-view-controller - コントローラー付きのスリムなフレームワーク PSR 4

Slim Framework に基づいてアプリケーションを作成しています。私はPSR 4パターンに従っています。このアプリケーションは、基本的に RESTful サービスを扱っています。将来の柔軟性を高めるために、従来のスリムコーディングとは異なるアプローチを採用しました。私のディレクトリ構造は以下のようになります。

"Routing" ディレクトリに、メニュー リンクを含むいくつかの yaml ファイルを保存します。これらはルーター コンポーネントで解析され、コントローラーとそのメソッドへの適切な呼び出し可能なパスが生成されます。

しかし、私が直面している問題は、どちらが良い方法であるかを判断することです? .yml ファイルから各ルーター項目を割り当てて、それらを次のように使用するにはどうすればよいですか?

さらに参照すると、yaml ファイルの 1 つが次のようになります。

効率的で良い方法は何ですか?提案してください。

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

php - PHP Composer Autoloader のシンプルな構造

Composer が動作していて、そのオートローダーを使用してクラスをロードしたいのですが、動作しません。これが私のディレクトリ構造です。始めはとてもシンプルにしています。

私が持っているwebgl.phpの中に:

index.php には次のものがあります。

そして、私の composer.json は、オートロード用にこれを定義しています:

2 番目の require のコメントを外すと、スクリプトは機能します。そうしないと、「致命的なエラー: クラス 'controllers\webgl' が 5 行目の /vagrant/index.php に見つかりません」というメッセージが表示されます。

フォルダー構造、クラスの名前空間、クラス名はすべてpsr-4に準拠していると思いました。しかし、私は何かを誤解しているに違いありません。同様の質問をたくさん読んだことがありますが、私のためにそれを並べ替えることができた人はいません。

クラスがロードされない理由と、それを修正するために何をすべきか誰か教えてもらえますか?

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

php - クラス名とは異なるファイル名を持つクラスを自動ロードするにはどうすればよいですか?

これらを見てきましたが、

別のファイル名でクラスを自動ロードする方法は? PHP

引数としてオートローダーに渡されたものとは異なる名前のクラスをロードします

私は変更できますが、私の MV* 構造には次のものがあります。

実際のクラスでは、

私は名前と一致させようとしていました。クラス名の接尾辞 (Controller、Model) を付けないと、再宣言しているため、クラスをロードできません。

クラスの名前をそのままにしておくと、autoload は次の名前のクラス ファイルを探すため、失敗します。

ファイル名が実際の場合、

私の唯一の方法は(順不同):

  • create_aliasを使用する
  • ファイルの名前を変更します (customer.model.php から customermodel.php に)
  • クラスの名前を変更する
  • 正規表現を使用する
  • インクルード ファイル ( 、 など) でブートストラップをinclude使用 require_onceする

?

サンプルコード、

ファイルの名前を変更する必要があるようですが、

http://www.php-fig.org/psr/psr-4/

「終了クラス名は、.php で終わるファイル名に対応します。ファイル名は、終了クラス名の大文字と小文字を一致させる必要があります。」

0 投票する
0 に答える
245 参照

php - PSR-4で「use」を使用してPHPインクルードクラス

私はPSR-4を使用しています.composer.jsonでpsr-4セクションを定義しました

「use」キーワードを使用してクラスをインポートしようとしたとき

このエラーが発生します: UploadFilesController.php 行 13 の FatalErrorException: クラス 'Controllers\Controller' が見つかりません

ファイルへの静的ルートを設定した場合

動作しますが、その後、Illuminate などの PHP クラスを含む他のファイルで同じ問題が見つかりました。

どうしたの?

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

php - 別の Laravel アプリケーションを Lumen に自動ロードする

Lumen を使用して、既存の Laravel アプリケーションの API を作成しています。API のコントローラーが Laravel アプリのモデルにアクセスできるようにするために、Laravel アプリを git サブモジュールとして追加し、composer.json ファイルを介して "Main" 名前空間に自動ロードするように設定しました。

これは問題なく動作しますが、これがメモリ使用量にどのような影響を与えるかを尋ねたかった. Laravel アプリ全体がメモリに読み込まれている (したがってパフォーマンスが低下している) のでしょうか、それとも Main\Model クラスが参照されているときに「どこを見るべきか」と Lumen アプリに指示されているだけなのでしょうか?

ありがとう

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

php - Zend 1 が psr-4 名前空間で動作しない

私はzendフレームワーク1に取り組んでいますが、_の代わりに\を使用したいです

お気に入り

これは正常に機能していますが、これを変更したとき

次に、エラーが発生します

コンポーザーで名前空間を作成しました

では、コードでこれらの名前空間をどのように使用できますか

これは Zend Framework1 で可能ですか?