4.7.1的新內(nèi)核(System內(nèi)核)如何不使用composer,自己創(chuàng)建autoload.php來實(shí)現(xiàn)引入第三方庫?
我在index.php里定義了COMPOSER_PATH:
define('COMPOSER_PATH', dirname(FCPATH).'/vendor/autoload.php');用AI寫了一個(gè)autoload.php文件并放到上面對應(yīng)的目錄:
<?php
// 文件路徑:同COMPOSER_PATH一致
/**
* 一個(gè)簡單的PSR-4自動(dòng)加載函數(shù)
* @param string $class 完整的類名(包含命名空間)
*/
spl_autoload_register(function ($class) {
// 項(xiàng)目定義的命名空間前綴與基礎(chǔ)目錄的映射
$prefixMap = [
// 鍵:命名空間前綴
// 值:對應(yīng)的基礎(chǔ)目錄
'League\\HTMLToMarkdown\\' => __DIR__ . '/htm/',
// 您可以在這里添加更多需要手動(dòng)管理的第三方庫
// 'OtherVendor\\Package\\' => __DIR__ . '/vendor/other/package/src/',
];
// 具體實(shí)現(xiàn)代碼,論壇不允許上傳
return;
}
});經(jīng)測試手動(dòng)require這個(gè)autoload.php后正常,但我理解的應(yīng)該是迅睿會(huì)自動(dòng)加載COMPOSER_PATH定義的autoload.php,不需要手動(dòng)引入,請問各位大佬是我哪里理解的不對還是上面哪里出了問題。
參考文檔:《插件自動(dòng)加載Composer類》
開源是一種精神,但不是義務(wù),幫忙是情分,不幫也不要抱怨,建議大家多研究代碼、多閱讀代碼、多翻閱社區(qū)歷史問題!
回復(fù)@開源社區(qū)技術(shù) 感謝回復(fù),我想實(shí)現(xiàn)的是全局加載,不是單個(gè)插件加載
參考文檔:《全局自動(dòng)加載Composer類》