亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

annuaire recherche
閱讀前篇 簡(jiǎn)介 Yii 是什么 從 Yii 1.1 升級(jí) 入門 安裝 Yii 運(yùn)行應(yīng)用 第一次問候 使用Forms 數(shù)據(jù)庫應(yīng)用 使用 Gii 生成代碼 進(jìn)階 應(yīng)用結(jié)構(gòu) 概述 入口腳本 應(yīng)用(Applications) 應(yīng)用組件(Application Components) 控制器(Controllers) 模型(Models) 視圖(views) 模塊(Modules) 過濾器(Filters) 小部件(Widgets) 前端資源(Assets) 擴(kuò)展(Extensions) 請(qǐng)求處理 運(yùn)行概述 啟動(dòng)引導(dǎo)(Bootstrapping) 路由和創(chuàng)建URL 請(qǐng)求(Requests) 響應(yīng)(Responses) Sessions 和 Cookies 錯(cuò)誤處理(Handling Errors) 日志(Logging) 關(guān)鍵概念 組件(Component) 屬性(Property) 事件(Events) 行為(Behaviors) 配置(Configurations) 別名(Aliases) 類自動(dòng)加載(Autoloading) 服務(wù)定位器(Service Locator) 依賴注入容器(Dependency Injection Container) 配合數(shù)據(jù)庫工作 數(shù)據(jù)庫訪問 (Data Access Objects) 查詢生成器(Query Builder) 活動(dòng)記錄(Active Record) 數(shù)據(jù)庫遷移(Migrations) Sphinx Redis MongoDB Elasticsearch 接收用戶數(shù)據(jù) 創(chuàng)建表單(Creating Forms) 輸入驗(yàn)證(Validating Input) 文件上傳(Uploading Files) 收集列表輸入(Collecting Tabular Input) 多模型的復(fù)合表單(Getting Data for Multiple Models) 顯示數(shù)據(jù) 格式化輸出數(shù)據(jù)(Data Formatting) 分頁(Pagination) 排序(Sorting) 數(shù)據(jù)提供器(Data Providers) 數(shù)據(jù)小部件(Data Widgets) 客戶端腳本使用(Working with Client Scripts) 主題(Theming) 安全 認(rèn)證(Authentication) 授權(quán)(Authorization) 處理密碼(Working with Passwords) 客戶端認(rèn)證(Auth Clients) 最佳安全實(shí)踐(Best Practices) 緩存 概述 數(shù)據(jù)緩存 片段緩存 頁面緩存 HTTP 緩存 RESTfull Web服務(wù) 快速入門(Quick Start) 資源(Resources) 控制器(Controllers) 路由(Routing) 格式化響應(yīng)(Response Formatting) 授權(quán)認(rèn)證(Authentication) 速率限制(Rate Limiting) 版本(Versioning) 錯(cuò)誤處理(Error Handling) 開發(fā)工具 調(diào)試工具欄和調(diào)試器 使用Gii生成代碼 生成API文檔 測(cè)試 概述(Overview) 配置測(cè)試環(huán)境(Testing environment setup) 單元測(cè)試(Unit Tests) 功能測(cè)試(Function Tests) 驗(yàn)收測(cè)試(Acceptance Tests) 測(cè)試夾具(Fixtures) 高級(jí)專題 高級(jí)應(yīng)用模板 創(chuàng)建自定義應(yīng)用程序結(jié)構(gòu) 控制臺(tái)命令 核心驗(yàn)證器(Core Validators) 國際化 收發(fā)郵件 性能優(yōu)化 共享主機(jī)環(huán)境 模板引擎 集成第三方代碼 小部件 Bootstrap 小部件 Jquery UI 助手類 概述 Array 助手(ArrayHelper) Html 助手(Html) Url 助手(Url)
personnages

啟動(dòng)引導(dǎo)(Bootstrapping)

啟動(dòng)引導(dǎo)(Bootstrapping)

啟動(dòng)引導(dǎo)是指:在應(yīng)用開始解析并處理新接受請(qǐng)求之前,一個(gè)預(yù)先準(zhǔn)備環(huán)境的過程。啟動(dòng)引導(dǎo)會(huì)在兩個(gè)地方具體進(jìn)行:入口腳本(Entry Script)?和?應(yīng)用主體(application)。

在入口腳本里,需注冊(cè)各個(gè)類庫的類文件自動(dòng)加載器(Class Autoloader,簡(jiǎn)稱自動(dòng)加載器)。這主要包括通過其?autoload.php?文件加載的 Composer 自動(dòng)加載器,以及通過?Yii?類加載的 Yii 自動(dòng)加載器。之后,入口腳本會(huì)加載應(yīng)用的?配置(configuration)?并創(chuàng)建一個(gè)應(yīng)用主體?的實(shí)例。

在應(yīng)用主體的構(gòu)造函數(shù)中,會(huì)執(zhí)行以下引導(dǎo)工作:

  1. 調(diào)用 yii\base\Application::preInit()(預(yù)初始化)方法,配置一些高優(yōu)先級(jí)的應(yīng)用屬性,比如 yii\base\Application::basePath 屬性。
  2. 注冊(cè)yii\base\Application::errorHandler。
  3. 通過給定的應(yīng)用配置初始化應(yīng)用的各屬性。
  4. 通過調(diào)用 yii\base\Application::init()(初始化)方法,它會(huì)順次調(diào)用 yii\base\Application::bootstrap() 從而運(yùn)行引導(dǎo)組件。
    • 加載擴(kuò)展清單文件(extension manifest file)?vendor/yiisoft/extensions.php
    • 創(chuàng)建并運(yùn)行各個(gè)擴(kuò)展聲明的?引導(dǎo)組件(bootstrap components)。
    • 創(chuàng)建并運(yùn)行各個(gè)?應(yīng)用組件?以及在應(yīng)用的?Bootstrap 屬性中聲明的各個(gè)?模塊(modules)組件(如果有)。

因?yàn)橐龑?dǎo)工作必須在處理每一次請(qǐng)求之前都進(jìn)行一遍,因此讓該過程盡可能輕量化就異常重要,請(qǐng)盡可能地優(yōu)化這一步驟。

請(qǐng)盡量不要注冊(cè)太多引導(dǎo)組件。只有他需要在 HTTP 請(qǐng)求處理的全部生命周期中都作用時(shí)才需要使用它。舉一個(gè)用到它的范例:一個(gè)模塊需要注冊(cè)額外的 URL 解析規(guī)則,就應(yīng)該把它列在應(yīng)用的?bootstrap 屬性之中,這樣該 URL 解析規(guī)則才能在解析請(qǐng)求之前生效。(譯注:換言之,為了性能需要,除了 URL 解析等少量操作之外,絕大多數(shù)組件都應(yīng)該按需加載,而不是都放在引導(dǎo)過程中。)

在生產(chǎn)環(huán)境中,可以開啟字節(jié)碼緩存,比如 APC,來進(jìn)一步最小化加載和解析 PHP 文件所需的時(shí)間。

一些大型應(yīng)用都包含有非常復(fù)雜的應(yīng)用配置,它們會(huì)被分割到許多更小的配置文件中。此時(shí),可以考慮將整個(gè)配置數(shù)組緩存起來,并在入口腳本創(chuàng)建應(yīng)用實(shí)例之前直接從緩存中加載。
Article précédent: Article suivant: