Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel中的依赖注入_Php_Laravel_Dependency Injection - Fatal编程技术网

Php Laravel中的依赖注入

Php Laravel中的依赖注入,php,laravel,dependency-injection,Php,Laravel,Dependency Injection,对于JavaScript和Java背景,我发现Laravel(或PHP)中的依赖项注入非常令人困惑 例如(Laravel 5.1),在中间件/身份验证中,构造函数接受一个保护对象。我已经搜索了代码库,类Authenticate从未被实例化 那么卫兵是从哪里来的呢 谢谢,SK。请查看laravel文档: 依赖项注入是一个花哨的短语,本质上意味着:类依赖项通过构造函数或在某些情况下通过“setter”方法“注入”到类中。 您可以在代码中实例化Guard,或者从Someware获取Guard实例,并

对于JavaScript和Java背景,我发现Laravel(或PHP)中的依赖项注入非常令人困惑

例如(Laravel 5.1),在中间件/身份验证中,构造函数接受一个保护对象。我已经搜索了代码库,类Authenticate从未被实例化

那么卫兵是从哪里来的呢


谢谢,SK。

请查看laravel文档:

依赖项注入是一个花哨的短语,本质上意味着:类依赖项通过构造函数或在某些情况下通过“setter”方法“注入”到类中。

您可以在代码中实例化Guard,或者从Someware获取Guard实例,并将其传递给中间件/身份验证构造函数

编辑:
Guard会在某个时刻自动注入到laravel框架代码中的中间件/身份验证中。您最好看看Laravel中依赖项注入的不同示例,其中所有内容都在代码中可见。

Defn:依赖项注入是一种技术,一个对象提供另一个对象的依赖项

您可以访问下面的链接,获取有关ioc容器说明的详细说明
访问:

是的,我读过,并且在JavaScript中使用了“依赖注入”。我的问题是如何将Guard自动注入中间件/身份验证。在Laravel中DI在哪里,我的意思是创建可注入对象的实例类?Laravel中的许多工作都是使用反射和php的神奇方法完成的:。您不一定会发现对象被直接实例化。@craig_h谢谢,有用的信息