依赖注入
通过构造函数,或者某些情况下通过「setter」方法将类依赖「注入」到类中
make 作用
创建一个短生命周期的对象但又希望使用 构造函数依赖自动注入功能
呢?这时我们可以通过 make(string $name, array $parameters = [])
函数来创建 $name
对应的的实例,代码示例如下:
$userService = make(UserService::class, ['enableCache' => true]);
注意仅 $name 对应的对象为短生命周期对象,该对象的所有依赖都是通过 get() 方法获取的,即为长生命周期的对象,可理解为该对象是一个浅拷贝的对象
问题
make生成的对象无法再编辑器中使用代码提示和代码跳转
解决方式
正价phpdoc 说明变量类型
/*
* @var $userService UserService
*/
$userService = make(UserService::class, ['enableCache' => true]);