Laravel生命周期

图示

步骤 

1 加载项目依赖。
2 创建Laravel应用实例
   1、创建容器
   2、绑定内核
3 接收请求并响应。
4 关闭

第一步骤:加载依赖 index.php

// composer自动加载机制
require __DIR__.'/../vendor/autoload.php';

// autoload.php @generated by Composer
require_once __DIR__ . '/composer/autoload_real.php';
return ComposerAutoloaderInit101671ca9bbc2f62f8335eb842637291::getLoader();

第二步骤:建应用实例   app.php

通过 public/index.php 来启动框架的,都会用到 Http Kernel 接受请求并返回响应
HTTP内核类的父类 包括环境检测、加载配置、处理异常、Facades注册、服务提供者注册、启动服务
Console 内核 通过artisan命令、计划任务、队列等启动框架进行处理
$app = require_once __DIR__.'/../bootstrap/app.php';

// 创建Laravel应用的ioc容器,
$app = new Illuminate\Foundation\Application(
    $_ENV['APP_BASE_PATH'] ?? dirname(__DIR__)
);
// 完成内核的绑定
$app->singleton(
    Illuminate\Contracts\Http\Kernel::class,
    App\Http\Kernel::class
);
$app->singleton(
    Illuminate\Contracts\Console\Kernel::class,
    App\Console\Kernel::class
);
$app->singleton(
    Illuminate\Contracts\Debug\ExceptionHandler::class,
    App\Exceptions\Handler::class
);
// 返回实例
return $app;

第三步骤:接收请求并响应

1、将 request 请求实例注册到 app 容器当中
2、清除之前的 request 实例缓存
3、启动引导程序:加载内核中定义的引导程序来引导启动应用
4、将请求发送到路由:通过 Pipeline 对象传输 HTTP请求对象流经框架中定义的HTTP中间件和
路由器来完成过滤请求,最终将请求传递给处理程序(控制器方法或者路由中的闭包)
由处理程序返回相应的响应。

第四步骤:关闭

响应完成后,HTTP 内核会调用 terminate 中间件做一些后续的处理工作。
调用完成后,整个生命周期结束。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值