14

カスタム Composer パッケージを作成しましたが、正しい autoload オプションを設定するのに問題があります。

私のクラスはすべてMyNamespace/Common名前空間の下にあります。したがって、たとえば、ArrayHelperクラスを含めるために使用しますMynamespace/Common/Helper/ArrayHelper

これは私の関連部分ですcomposer.json

"autoload": {
    "psr-0": { "MyNamespace\\": "" }
} 

私はこれを読みました: composer.json / autoload

何か助けはありますか?

4

1 に答える 1

20

名前空間のファイルの場所に移動する必要があります。

"autoload": {
    "psr-0": { "MyNameSpace": "./<path to your parent directory>" }
}

たとえば、これは私のディレクトリ構造です。

composer.json
source
  \-Data
    |-Controller
    \-Repository

次に、composer.json ファイルで次のようにします。

"autoload": {
    "psr-0": { "MyNameSpace": "source/Data" }
}

次に、これらの名前空間でクラスを定義できます。

/* namespace for classes in controller directory */
namespace MyNameSpace\Controller;

/* namespace for classes in repository directory */
namespace MyNameSpace\Repository;
于 2013-08-09T12:06:33.410 に答える