yii框架運(yùn)行原理?
用戶提交指向 入口腳本 web/index.php 的請求。
入口腳本會(huì)加載 配置數(shù)組 并創(chuàng)建一個(gè) 應(yīng)用 實(shí)例用于處理該請求。
應(yīng)用會(huì)通過 request(請求) 應(yīng)用組件 解析被請求的 路由。
應(yīng)用創(chuàng)建一個(gè) controller(控制器) 實(shí)例具體處理請求。
控制器會(huì)創(chuàng)建一個(gè) action(動(dòng)作) 實(shí)例并為該動(dòng)作執(zhí)行相關(guān)的 Filters(訪問過濾器)。
如果任何一個(gè)過濾器驗(yàn)證失敗,該動(dòng)作會(huì)被取消。
如果全部的過濾器都通過,該動(dòng)作就會(huì)被執(zhí)行。
動(dòng)作會(huì)加載一個(gè)數(shù)據(jù)模型,一般是從數(shù)據(jù)庫中加載。
動(dòng)作會(huì)渲染一個(gè) View(視圖),并為其提供所需的數(shù)據(jù)模型。
渲染得到的結(jié)果會(huì)返回給 response(響應(yīng)) 應(yīng)用組件。
響應(yīng)組件會(huì)把渲染結(jié)果發(fā)回給用戶的瀏覽器。