Anfora 自动装载类
程序员文章站
2023-12-31 21:59:04
1、目录结构 + Anfora | + Autoload | - ClassLoader.php | - Autoload.php - autoload.php 2、注册类加载器 src/Anfora/Autoload.php getLoader() 注册类加载器函数并注销 注册全局类加载 load ......
1、目录结构
+ Anfora
| + Autoload
| - ClassLoader.php
| - Autoload.php
- autoload.php
2、注册类加载器
src/Anfora/Autoload.php
class Anfora_Autoload { private static $loader; public static function loadClassLoader($class) { $class_name = trim($class, '\\'); if ('Anfora\Autoload\ClassLoader' === $class_name) { require_once __DIR__ . '/Autoload/ClassLoader.php'; } } public static function getLoader() { if (null !== self::$loader) { return self::$loader; } $autoload_function = array('Anfora_Autoload', 'loadClassLoader'); spl_autoload_register($autoload_function, true, true); self::$loader = $loader = new \Anfora\Autoload\ClassLoader(); spl_autoload_unregister($autoload_function); $loader->register(true); return $loader; } }
getLoader()
注册类加载器函数并注销
注册全局类加载
loadClassLoader()
引入全局类加载
3、全局类装载
src/Anfora/Autoload/ClassLoader.php