Laravel 运行原理分析与源码分析,底层看这篇足矣
学Laravel
8年PHP老码农与你分享laravel学习笔记与学习技巧,方法!
Official Account
学习与交流:
文章摘要
make方法从容器中解析指定的值为实际的类,比如$app->make(Illuminate\Contracts\Http\Kernel::class) 解析出 App\Http\Http.php
handle方法对http请求进行处理
实际上是handle中的sendRequestThroughRouter处理的http请求
首先,将request绑定到共享实例
然后执行bootstarp方法,运行给定的引导类数组$bootstrappers,这里很关键,包括了加载配置文件、环境变量、服务提供者(config/app.php中的providers)、门面、异常处理、引导提供者
之后,进入管道模式,经过中间件的处理过滤后,再进行用户请求的分发
在请求分发时,首先,查找与给定请求匹配的路由,然后执行runRoute方法,实际处理请求的是runRoute 方法中的runRouteWithinStack
然后,经过runRouteWithinStack中的run方法,将请求分配到实际的控制器中,并得到响应结果
文章内容
点击“阅读原文”, 查看本文完整内容,并且获取相关教程
