2017-04-10 64 views
0

的作曲家自動加載添加目錄以這種方式(composer.json)如何在運行時添加作曲自動加載類映射

"autoload": { 
    "classmap": [ 
     "/var/www/lib", 
     "/var/www/source" 
    ] 
} 

但它始終是煩人運行作曲家在我自己的項目creatinng新的類時,每次dumpautoload目錄。

如何在運行時添加我的dirs?

P.S.我知道什麼是PSR-4。但是,如果您有超過100個課程並使用數百個模板進行HTML呈現 - 這不是解決方案。我將不得不在模板中編寫大量的「使用foo \ bar」。那是異常的。

+0

加載類PSR-4樣式而不是classmap。 –

+0

您應該編寫[PSR-4](http://www.php-fig.org/psr/psr-4/)兼容的項目結構。這樣你可以在composer.json中使用[psr-4](https://getcomposer.org/doc/04-schema.md#psr-4)部分。 – apokryfos

+0

@MATS,我知道。但在這種情況下,我將不得不在我的數百個html模板中定義「使用」噸。那就是問題所在。 –

回答

0

只有兩種方法可以告訴Composer如何查找未記錄在類圖中的類,即PSR-0和PSR-4。 PSR-0適用於所有類型的類,PSR-4僅適用於名稱空間中的類。

一個人應該能夠將代碼構造成PSR-0或PSR-4,特別是如果它是新代碼被寫入的 - 這就是爲什麼類圖自動加載僅被視爲能夠處理舊的遺留問題的一種方式不符合PSR的代碼。使用類映射自動加載新代碼是不正常的。