laravel中的make方法有什么作用


本文小编为大家详细介绍“laravel中的make方法有什么作用”,内容详细,步骤清晰,细节处理妥当,希望这篇“laravel中的make方法有什么作用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 在laravel中,make方法用于从容器当中解析一个type,该type是源码当中定义的,解析后返回的结果就是type的一个实例,容器类调用make方法时,若没有已注册的key,会自动通过反射类实例化具体类。本文操作环境:Windows10系统、Laravel6版、Dell G3电脑。Laravel中的make方法是用来从容器当中解析一个type,这个type是源码当中定义的,不是很好翻译成中文。解析后返回的结果就是type的一个实例。看过源码的同学应该知道在IlluminateFoundationApplication这个类和它的父类IlluminateContainerContainer类中都有make方法,那么当执行如index.php中的这行代码,1 $kernel = $app->make(IlluminateContractsHttpKernel::class);的时候,就会首先去执行IlluminateFoundationApplication中的make方法,那么我们就先看看它。(这篇文章就以make这个Kernel类为例)好,我们一步一步的来,先看看这个getAlias方法,这个方法的作用就是返回这个类的别名,如果给出的是一个完整的类名且在aliases中已经设置了那么就返回这个类名的别名,如果没有设置过就返回这个类名本身,大家在看这个方法的时候可以先var_dump一下$app,对照着看里面的aliases数组,框架作者写这个方法真的很巧妙,至少这种递归方式在我实际开发当中很少用到。接下来就是对deferredServices和instances这个两个数组进行判断,在本例 $kernel = $app->make(IlluminateContractsHttpKernel::class); 当中,判断的结果为false,因此不执行loadDeferredProvider方法。再接下来就是免费云主机域名调用父类IlluminateContainerContainer中的make方法了,读到这里,这篇“laravel中的make方法有什么作用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注百云主机行业资讯频道。

相关推荐: springboot怎么实现枚举类型传递

这篇文章主要讲解了“springboot怎么实现枚举类型传递”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“springboot怎么实现枚举类型传递”吧!首先先建立一个枚举类:再建立一个枚举api接口:进行测试,…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 08/31 18:22
Next 08/31 18:22

相关推荐