laravel中App Service Provider类的启动和注册方法的区别

时间:2018-04-11 18:42:39

标签: laravel

我是Laravel的新手并试图理解app()方法和App Service Provider类中的register()方法之间的区别。我已经搜遍了所有,但未能找到一个明确的答案。我将非常感谢更好的解释和友好的合作。

1 个答案:

答案 0 :(得分:2)

“所有提供商注册后,都会被”启动“。这将在每个提供程序上触发引导方法。使用服务提供程序时常见的错误是尝试在register方法中使用其他提供程序提供的服务。由于在注册方法中,我们没有保证所有其他提供程序已被加载,因此您尝试使用的服务可能尚未提供。因此,使用其他服务的服务提供者代码应始终存在于引导方法中。寄存器方法只应该用于,你猜对了,用容器注册服务。在引导方法中,您可以做任何您喜欢的事情:注册事件监听器,包括路由文件,注册过滤器或您可以想象的任何其他内容。“

因此寄存器1仅用于绑定。引导一个是实际触发发生的事情。