所以 - 我有一個簡單PCR0自動加載機在我bootstrap.php中,應該從廠商目錄加載任何PCR0兼容庫類...跳過作曲家自動加載文件的生成?
spl_autoload_register(function($classname) {
$path = preg_match('/\\\\/', $classname)
? str_replace('\\', DIRECTORY_SEPARATOR, $classname)
: str_replace('_', DIRECTORY_SEPARATOR, $classname);
$file = VENDORS_PATH . DIRECTORY_SEPARATOR . $path . '.php';
if (file_exists($file)) {
require_once($file);
}
});
我不知道如果我明白爲什麼作曲家生成自動加載文件供應商目錄(即作曲家目錄和autoload.php文件)?
我可以從那些產生自動加載文件停止作曲?或者我錯過了什麼?我不認爲我需要他們?
「 ..要求/包括供應商/ autoload.php並有作曲家..「嗯。恕我直言的依賴管理和自動加載是不同的問題。有些人更喜歡使用Zend \ Loader或其他庫來自動加載。我通常更喜歡僅使用PSR0兼容的庫,並在引導中使用這個簡短的片段 - 而不用擔心不同的加載策略。 Zend/Loader還支持來自作曲家文檔的類別地圖... –
:「對於指定自動載入信息的庫,Composer會生成供應商/ autoload.php文件。」 - 對我來說,這幾乎聽起來像Composer呈現自動加載,而不是optonal,但你說它不是? –
指定的圖書館是指通過作曲家安裝的圖書館。如果該庫的composer.json具有自動加載信息,那麼這些自動加載信息將被放入autoload.php。 – ppetermann