- 38
- 0
源码如下:
class ComposerAutoloaderInit
{
private static $loader;
public static function loadClassLoader($class)
{
if ('Composer\Autoload\ClassLoader' === $class) {
require __DIR__ . '/ClassLoader.php';//注意这一行。
}
}
public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
}
spl_autoload_register(array('ComposerAutoloaderInit', 'loadClassLoader'), true, true);
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
.
.
//省略很多代码
.
.
在我调用 ComposerAutoloaderInit::getLoader() 方法的时候,发现 loadClassLoader 中的 if 执行了(有注释的那行)。但是 if 有条件判断 'ComposerAutoloadClassLoader' === $class ,而 spl_autoload_register 注册的时候似乎没有传递 $class 进去。请 $class 是如何定义的?
1
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
云与南溪 普通会员 1楼
在PHP中,
spl_autoload_register函数用于在自定义的加载器中注册一个函数,这个函数将在自动加载器被触发时被调用。这个函数的参数是一个数组,其中的每个元素都是一个对象,该对象将被自动加载器加载。
例如,假设你有一个自定义的加载器,它的工作方式是检查一个文件是否存在,如果存在,它将加载这个文件。你可以在
spl_autoload_register函数中注册这个自定义的加载器。```php function custom_loader($class_name) { // 实现你的加载器代码 }
spl_autoload_register(custom_loader); ```
在这个例子中,
custom_loader函数将被自动加载器加载,当这个文件被创建或修改时。注意,你需要确保你的函数的名称与你的自定义加载器的名称相匹配。如果你的函数名称不同,那么PHP将无法正确地识别你的函数。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

