这个闭包看不懂
protected function getClosure($abstract, $concrete)
{
return function ($container, $parameters = []) use ($abstract, $concrete) {
if ($abstract == $concrete) {
return $container->build($concrete);
}
return $container->resolve(
$concrete, $parameters, $raiseEvents = false
);
};
}
这个是
D:\laravel5.8\vendor\laravel\framework\src\Illuminate\Container\Container.php
第265 行,看了下不知道是什么意思
翻看这个方法被调用的地方,注释写的很清楚,就是为了将不是闭包的参数转换为闭包,所以
getClosure
返回了闭包。如何实现Ioc容器和服务提供者是什么概念