0
我有一個自定義的自動加載器在PHP中。搜索路徑設置在一個數組中。 在PHP中我有一個自定義的自動加載器,如何擴展名稱空間?
這是一個spl_autoload_register()註冊
- $ CLASSNAME無載類的名稱
- $路徑中的目錄:裝載本身功能!
if (!isset($autoloadClassPaths[$classname])) { foreach ($path as $dir) { foreach (new DirectoryIterator($dir) as $fileinfo) { if (substr($fileinfo->getFilename(), -4) == '.php') { $tokens = token_get_all(file_get_contents($fileinfo->getPathname())); $count = count($tokens); for ($i = 2; $i < $count; $i++) { if ( ($tokens[$i - 2][0] == T_CLASS || $tokens[$i - 2][0] == T_INTERFACE) && $tokens[$i - 1][0] == T_WHITESPACE && $tokens[$i][0] == T_STRING) { $autoloadClassPaths[$tokens[$i][1]] = $fileinfo->getPathname(); } } } } } } else { require ($autoloadClassPaths[$classname]); }
的問題是,現在我遇到了命名空間。如何寫這個自動加載?
你的錯。它的自動加載功能已經:)我編輯這 –
uhm,那麼爲什麼你遍歷目錄......無論如何我延長我的答案命名空間的東西.. –
是啊,但如果目錄結構不是這樣? –