2017-02-24 118 views
0

我有這個設置成composer.json作曲家PSR-4自動加載具有相同的密鑰

"autoload": { 
     "psr-4": { 
      "": "src/", 
      "App\\": "src/App" 
     } 

    } 

這個文件夾結構:

src 
---App 
------MyClass.php --> namespace \App; 
---Somedir 
------Otherdir 
---------OtherClass.php --> no namespace 

下的文件夾src/App將加載,文件Somedir不低於。

有什麼問題嗎?

回答

0

您可以使用自動加載磁帶機的組合,因此,調整composer.json與命名空間中同時使用PSR-4自動加載的類,使用類映射自動加載磁帶機對於那些沒有命名空間:

{ 
    "autoload": { 
    "classmap": [ 
     "src/SomeDir" 
    ], 
    "psr-4": { 
     "App\\": "src/App" 
    } 
    } 
} 

僅供參考,見https://getcomposer.org/doc/04-schema.md#autoload

使用類映射自動加載器的缺點是,如果您添加或刪除其通過類映射自動加載器加載的類目錄,將類映射需要再生:

$ composer dump-autoload