<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 啟動引導(Bootstrapping) 啟動引導是指:在應用開始解析并處理新接受請求之前,一個預先準備環境的過程。啟動引導會在兩個地方具體進行:[入口腳本(Entry Script)](http://www.yiichina.com/doc/guide/2.0/structure-entry-scripts)?和?[應用主體(application)](http://www.yiichina.com/doc/guide/2.0/structure-applications)。 在[入口腳本](http://www.yiichina.com/doc/guide/2.0/structure-entry-scripts)里,需注冊各個類庫的類文件自動加載器(Class Autoloader,簡稱自動加載器)。這主要包括通過其?`autoload.php`?文件加載的 Composer 自動加載器,以及通過?`Yii`?類加載的 Yii 自動加載器。之后,入口腳本會加載應用的?[配置(configuration)](http://www.yiichina.com/doc/guide/2.0/concept-configurations)?并創建一個?[應用主體](http://www.yiichina.com/doc/guide/2.0/structure-applications)?的實例。 在應用主體的構造函數中,會執行以下引導工作: 1. 調用 yii\base\Application::preInit()(預初始化)方法,配置一些高優先級的應用屬性,比如 yii\base\Application::basePath 屬性。 2. 注冊yii\base\Application::errorHandler。 3. 通過給定的應用配置初始化應用的各屬性。 4. 通過調用 yii\base\Application::init()(初始化)方法,它會順次調用 yii\base\Application::bootstrap() 從而運行引導組件。 * 加載擴展清單文件(extension manifest file)?`vendor/yiisoft/extensions.php`。 * 創建并運行各個擴展聲明的?[引導組件(bootstrap components)](http://www.yiichina.com/doc/guide/2.0/structure-extensions#bootstrapping-classes)。 * 創建并運行各個?[應用組件](http://www.yiichina.com/doc/guide/2.0/structure-application-components)?以及在應用的?[Bootstrap 屬性](http://www.yiichina.com/doc/guide/2.0/structure-applications#bootstrap)中聲明的各個?[模塊(modules)組件](http://www.yiichina.com/doc/guide/2.0/structure-modules)(如果有)。 因為引導工作必須在處理**每一次**請求之前都進行一遍,因此讓該過程盡可能輕量化就異常重要,請盡可能地優化這一步驟。 請盡量不要注冊太多引導組件。只有他需要在 HTTP 請求處理的全部生命周期中都作用時才需要使用它。舉一個用到它的范例:一個模塊需要注冊額外的 URL 解析規則,就應該把它列在應用的?[bootstrap 屬性](http://www.yiichina.com/doc/guide/2.0/structure-applications#bootstrap)之中,這樣該 URL 解析規則才能在解析請求之前生效。(譯注:換言之,為了性能需要,除了 URL 解析等少量操作之外,絕大多數組件都應該按需加載,而不是都放在引導過程中。) 在生產環境中,可以開啟字節碼緩存,比如 APC,來進一步最小化加載和解析 PHP 文件所需的時間。 一些大型應用都包含有非常復雜的應用[配置](http://www.yiichina.com/doc/guide/2.0/concept-configurations),它們會被分割到許多更小的配置文件中。此時,可以考慮將整個配置數組緩存起來,并在入口腳本創建應用實例之前直接從緩存中加載。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看