成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Laravel 請求周期

Cristalven / 2081人閱讀

摘要:請求周期加載自動加載器獲取應(yīng)用對象實例化應(yīng)用解析此對象貫穿全文主要過程設(shè)置基礎(chǔ)路徑基礎(chǔ)綁定注冊全局基礎(chǔ)服務(wù)核心容器別名設(shè)置注冊三個單例獲取對象實例化此對象為應(yīng)用的樞紐,將會協(xié)調(diào)各部分之間的工作,完成請求主要過程注入應(yīng)用對象注入事件對象注入

Laravel 請求周期 加載 composer 自動加載器
require __DIR__."/../bootstrap/autoload.php";
獲取 Application 應(yīng)用對象 Laravel 實例化應(yīng)用解析
// 此 $app 對象貫穿全文
$app = require_once __DIR__."/../bootstrap/app.php";

主要過程:
    1. 設(shè)置基礎(chǔ)路徑
    2. 基礎(chǔ)綁定
    3. 注冊全局基礎(chǔ)服務(wù)
    4. 核心容器別名設(shè)置
    5. 注冊三個單例
獲取 Kernel 對象 Laravel kernel實例化
// 此 $kernel 對象為 Laravel 應(yīng)用的樞紐,將會協(xié)調(diào)各部分之間的工作,完成請求
$kernel = $app->make(IlluminateContractsHttpKernel::class);

主要過程:
    1. 注入應(yīng)用對象
    2. 注入事件對象
    3. 注入路由集合對象
    4. 注入路由對象
    5. 將各中間件注入到路由對象
獲取 Request 對象
$request = IlluminateHttpRequest::capture()

主要過程:
    1. 委托SymfonyComponentHttpFoundationRequest組件,并注入全局變量(封裝成相應(yīng)的對象),創(chuàng)建基礎(chǔ)請求對象
    2. 通過基礎(chǔ)請求對象創(chuàng)建 $request
處理 Request 對象,返回 Response 對象 Laravel Kernel實例化后的處理 Laravel Kernel引導(dǎo)流程分析 Laravel 中間件 Laravel 路由處理 Laravel 響應(yīng)準(zhǔn)備 Laravel 路由執(zhí)行
$response = $kernel->handle(
    $request = IlluminateHttpRequest::capture()
);

主要過程:  
    1. 注入請求對象($request)
    2. 根據(jù)配置項設(shè)置應(yīng)用的運行環(huán)境(包括加載設(shè)置系統(tǒng)環(huán)境變量、加載配置文件、設(shè)置系統(tǒng)錯誤異常、設(shè)置 Facade、注冊配置項的服務(wù)提供者、啟動服務(wù)提供者的引導(dǎo)項)并觸發(fā)相應(yīng)的事件
    3. 處理全局中間件
    4. 路由解析(請求分發(fā)、路由查找、路由匹配、路由分離器設(shè)置、事件分發(fā)、路由執(zhí)行)
    5. 通過路由解析返回的 content 創(chuàng)建 $response 對象
    6. 設(shè)置 $response 對象的響應(yīng)頭
發(fā)送響應(yīng)
$response->send();
執(zhí)行后續(xù)操作
$kernel->terminate($request, $response);

主要過程:
    1. 獲取中間件,并嘗試觸發(fā)每個中間件的 terminate 方法
    2. 觸發(fā) terminate 的事件

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/22597.html

相關(guān)文章

  • 深度挖掘 Laravel 生命周期

    摘要:引導(dǎo)程序包括完成環(huán)境檢測配置加載異常處理注冊服務(wù)提供者注冊啟動服務(wù)這六個引導(dǎo)程序。處理請求請求處理發(fā)生在內(nèi)核的方法內(nèi)。發(fā)送響應(yīng)頭部信息發(fā)送報文主題終止程序程序終止,完成終止中間件的調(diào)用終止中間件以上便是的請求生命周期的始末。 本文首發(fā)于個人博客 深度挖掘 Laravel 生命周期,轉(zhuǎn)載請注明出處。 這篇文章我們來聊聊 「Laravel 生命周期」 這個主題。雖然網(wǎng)絡(luò)上已經(jīng)有很多關(guān)于這個...

    arashicage 評論0 收藏0
  • Laravel 請求生命周期

    摘要:應(yīng)用實例所依賴的服務(wù)提供者可以在配置文件中的節(jié)點找到。完成所有服務(wù)提供者注冊到應(yīng)用實例后,應(yīng)用實例執(zhí)行啟動方法引導(dǎo)項目啟動?;騼?nèi)核接收到請求,加載服務(wù)提供者,同時,將請求分發(fā)給路由器執(zhí)行。 這是一篇翻譯文章,原文 Request Life Cycle of Laravel,譯文 Laravel 請求生命周期 首發(fā)于個人博客,轉(zhuǎn)載請注明出處。 當(dāng)需要使用一個框架、工具或者服務(wù)時,在使用前...

    junfeng777 評論0 收藏0
  • Laravel學(xué)習(xí):請求到響應(yīng)的生命周期

    摘要:請求處理階段請求處理階段首先是準(zhǔn)備請求處理的環(huán)境,包括環(huán)境加載服務(wù)提供者注冊等環(huán)節(jié),然后將請求實例通過中間件處理及通過路由和控制器的分發(fā)控制,使得不同的請求通過相應(yīng)的處理程序進行處理并生成響應(yīng)的過程。 Laravel請求到響應(yīng)的整個執(zhí)行過程,主要可以歸納為四個階段,即程序啟動準(zhǔn)備階段、請求實例化階段、請求處理階段、響應(yīng)發(fā)送和程序終止階段。 程序啟動準(zhǔn)備階段 服務(wù)容器實例化 服務(wù)容器的實...

    OBKoro1 評論0 收藏0
  • 使用 Swoole 加速 Laravel

    摘要:因為為單個請求創(chuàng)建的環(huán)境將在請求過程完成后立即銷毀??梢猿蔀閺姶蟮男阅茉鰪娖?,提供了優(yōu)雅的結(jié)構(gòu)和代碼使用方式。你可以使用此命令快速安裝它,并訪問官方網(wǎng)站獲取更多信息。注意目前僅支持和。服務(wù)器不能使用?;鶞?zhǔn)測試使用進行干凈的測試。 Swoole 是針對PHP的生產(chǎn)級異步編程框架。它是一種用純C語言編寫的PHP擴展,它使PHP開發(fā)人員能夠在PHP中編寫高性能,可擴展的并發(fā)TCP,UDP,U...

    didikee 評論0 收藏0
  • 了解swoole運行模式,加速laravel應(yīng)用

    摘要:負(fù)責(zé)解釋執(zhí)行文件生成響應(yīng),最終返回給,展現(xiàn)至前端。相比于傳統(tǒng)架構(gòu),進程模型最大的特點在于其多線程模式處理網(wǎng)絡(luò)請求,使得其能輕松應(yīng)對大量連接。這要求開發(fā)人員對于多進程的運行模式有更清晰的認(rèn)識更容易內(nèi)存泄露。 一、SwooleSwoole號稱重新定義了PHP,它是一個PHP擴展,使得PHP可以使用異步的方式執(zhí)行,就像node一樣,而且還能使用socket,為PHP提供了一系列異步IO、事件...

    時飛 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<