最近在学习 Laravel 源码,有个方法调用的问题不太明白想请教一下。
最近在学习 laravel5.8 源码,有个问题不太明白想请教一下大家,当 laravel 框架启动时,在实例化 Illuminate\Foundation\Application 类的时候,在构造函数里执行了\
$this->registerBaseServiceProviders () 来注册基本服务提供者,然后调用了本类的方法 registerBaseServiceProviders ()。在该方法里面第一行代码 $this->register (new EventServiceProvider ($this)); 这里 new EventServiceProvider ($this) 是实例化 Illuminate\Events\EventServiceProvider 类,该类继承了 Illuminate\Support\ServiceProvider 抽象类。我打断点调试的结果是当执行 new EventServiceProvider ($this) 时会先执行 ServiceProvider 抽象类的构造函数。然后执行 EventServiceProvider 类里的 register 方法。我不清楚 register 方法是怎么被调用的,也没有找到调用该方法的语句。谢谢大家。
推荐文章: