文件laravel\public\index.php
$kernel->terminate($request, $response);
文件Illuminate\Foundation\Http\Kernel.php

在“App\Http\Kernel”类的$middleware数组属性中进行管理,默认情形下,须要终止的中间件便是指这个数组中记录的中间件,然后会通过做事容器依次实例化相应的中间件并调用terminate()函数。在Laravel框架默认情形下,只有会话中间件存在该函数,紧张用于会话记录,即用户状态信息的记录,这里只须要理解在程序终止阶段还会调用中间件,如果有需求可以在这部分添加相应的功能。
要求到相应的全体实行过程,紧张可以归纳为四个阶段,即程序启动准备阶段、要求实例化阶段、要求处理阶段、相应发送和程序终止阶段。每个阶段都有相应的职责功能。程序启动准备阶段紧张完成文件自动加载的实现、做事容器的实例化、根本做事供应者的注册及核心类的实例化等,核心类实例工具用于掌握要求实例工具天生和处理过程的各个环节,而做事容器实例化是为全体过程供应资源做事。要求实例化阶段是将要求信息以工具的形式进行记录保存的过程。要求处理阶段首先是准备要求处理的环境,包括环境加载、做事供应者注册等七个环节,然后将要求实例通过中间件处理及通过路由和掌握器的分发掌握,使得不同要求通过相应的处理函数进行处理并天生相应的过程。相应发送和程序终止阶段是将相应返回给客户端并记录与客户端有关的信息等事情。这便是Laravel框架的全体生命周期过程。