Yii2.0源代碼解析一

yii版本2.0.15php

從入口文件開始,首先web

  1. 定義全局常量
  2. 註冊composer自動加載器
  3. 包含Yii類文件
  4. 加載應用配置
  5. 引導啓動,調用應用主體並配置來處理請求(也就是run方法)

1. 定義全局常量數組

例如定義是否開啓debug模式,是調試環境仍是正式環境,根據須要可定義本身的常量。composer

defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');

2. 註冊composer自動加載器yii

composer自動加載:自動加載擴展類,及擴展類依賴另外一個類,有本身的自動加載規則。ide

3. Yii類文件ui

註冊Yii自動加載器,配置Yii核心類映射表,當用到某類的時候不須要檢驗該類咯,若是類映射表中有該類就直接引入了,是Yii的一種機制吶,要想預加載類能夠配置本身的類別名。例如:urlManager路由解析組件、異常組件、MySQL PDO組件等等。註冊依賴注入容器(DI)和服務定位容器。Yii也能夠自動加載擴展類,前提是須要符合Composer自動加載規則。url

4. 引入應用主體配置文件debug

配置文件主要配置應用主體屬性/yourpath/config/web.php都是以數組形式定義的,在當前配置中又分子文件配置,職責劃分了。例如數據配置文件、如何加載控制器、臨時文件存儲地址、郵箱配置文件、參數配置文件等,配置文件發揮着重要做用它會影響整個應用主體行爲。調試

5. 引導啓動,應用主體實例化並配置

主要是加載配置,建立應用主體實例,註冊錯誤機制,路由解析到引導程序開始運行應用。處理當前行爲前置行爲執行當前行爲在執行後置行爲發送響應。入口腳本接收應用主體傳來退出狀態並完成請求。

參考文獻

Yii2.0權威指南

Yii2.0 源代碼

相關文章
相關標籤/搜索