2017-05-05 123 views
0

通過考慮該文件結構如何使用作曲家自動加載器自動加載我的課程?

| -- src/
     | -- vendor 
     | -- models 
     | -- libraries 
     | -- ... 
     | -- composer.json 

我怎麼能自動加載位於「模型」 &「庫」目錄類?

+1

您通常會包含_two_ autoloader文件/實現:由作曲家和您自己創建的文件/實現。 – arkascha

+0

我在想PHP只允許一個自動加載器(我不知道這個想法是從哪裏來的!),我測試了兩個自動加載器,他們工作正常,謝謝 – BBeta

回答

2

您可以添加自己的自動加載的規則到composer.json文件在您的項目 - 這增加了自己的規則的vendor/autoload.php文件,使自己的類將加載以及在vendor/目錄的人。文檔中有更多信息:https://getcomposer.org/doc/04-schema.md#autoload。看看PSR-0部分從兩個目錄加載類。

嘗試類似:

{ 
    "autoload": { 
     "psr-0": { "": ["models/", "libraries"] } 
    } 
} 

如果你的類命名空間,然後指定的命名空間,因爲這將在這些目錄中尋找所有類停止作曲。

+0

我不知道爲什麼,但事情不想工作與「psr-0」,但它適用於psr-4:「psr-4」:{「namespace1 \\」:「models /」,「namespace2 \\」:「libraries /」} ...謝謝 – BBeta