[laravel源码]Application/make解析
说明
本章节说明容器中 make
的解析过程。
源码
vendor\laravel\framework\src\Illuminate\Foundation\Application.php
public function make($abstract, array $parameters = [])
{
// 1. aliases 中获取别名
$abstract = $this->getAlias($abstract);
// 2. 如果是延迟加载服务则走对应流程
if (isset($this->deferredServices[$abstract]) && ! isset($this->instances[$abstract])) {
$this->loadDeferredProvider($abstract);
}
// 3. 调用父类make
return parent::make($abstract, $parameters);
}
// 父类走 resolve
public function make($abstract, array $parameters = [])
{
return $this->resolve($abstract, $parameters);
}
分析
本作品采用《CC 协议》,转载必须注明作者和本文链接