生命周期概述#
第一件事#
一个 Laravel 应用的所有请求的入口都是 public/index.php
文件。 通过网页服务器 (Apache / Nginx) 所有请求都会导向这个文件。 index.php
文件没有太多的代码,只是加载框架其他部分的一个入口。
index.php
文件载入 Composer 生成的自动加载器定义,并从 bootstrap/app.php
文件获取到 Laravel 应用实例。Laravel 的第一个动作就是创建一个自身应用实例 / 服务容器。
自身应用实例:
Laravel 服务容器解析
Laravel 服务提供者
服务、容器、提供者 三者的关系:
container是所有service的载体,provider的作用是提供注册service到container的方法。
服务提供者就是用来注册,存放将来需要的类到容器中。服务容器的作用就是存放需要的类,再某个地方用到时,就从容器中获取。
这些作用就是减少模块间的依赖关系。在用到时,自动加进去。