<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                <article><h1>Laravel 的配置信息</h1><ul><li><a href="#introduction">基礎介紹</a></li><li><a href="#environment-configuration">環境配置</a><ul><li><a href="#determining-the-current-environment">判定目前使用的環境</a></li></ul></li><li><a href="#accessing-configuration-values">獲取設置值</a></li><li><a href="#configuration-caching">緩存配置信息</a></li><li><a href="#maintenance-mode">維護模式</a></li></ul><p><a name="introduction"></a></p><h2><a href="#introduction">基礎介紹</a></h2><p>所有 Laravel 框架的配置文件都放置在 <code class=" language-php">config</code> 目錄下。每個選項都有說明,請仔細閱讀這些說明,并熟悉這些選項配置。</p><p><a name="environment-configuration"></a></p><h2><a href="#environment-configuration">環境配置</a></h2><p>應用程序常常需要根據不同的運行環境設置不同的值。例如,你會希望在本機開發環境上有與正式環境不同的緩存驅動。類似這種環境變量,只需通過 <code class=" language-php"><span class="token punctuation">.</span>env</code> 配置文件就可輕松完成。</p><p>Laravel 使用 Vance Lucas 的 <a href="https://github.com/vlucas/phpdotenv">DotEnv</a> PHP 函數庫來實現項目內環境變量的控制,在安裝好的全新 Laravel 應用程序里,在根目錄下會包含一個 <code class=" language-php"><span class="token punctuation">.</span>env<span class="token punctuation">.</span>example</code> 文件。如果你通過 Composer 安裝 Laravel,這個文件將自動被更名為 <code class=" language-php"><span class="token punctuation">.</span>env</code>,否則你只能手動更改文件名。</p><blockquote class="has-icon tip"><p><div class="flag"><span class="svg"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" version="1.1" x="0px" y="0px" width="56.6px" height="87.5px" viewBox="0 0 56.6 87.5" enable-background="new 0 0 56.6 87.5" xml:space="preserve"><path fill="#FFFFFF" d="M28.7 64.5c-1.4 0-2.5-1.1-2.5-2.5v-5.7 -5V41c0-1.4 1.1-2.5 2.5-2.5s2.5 1.1 2.5 2.5v10.1 5 5.8C31.2 63.4 30.1 64.5 28.7 64.5zM26.4 0.1C11.9 1 0.3 13.1 0 27.7c-0.1 7.9 3 15.2 8.2 20.4 0.5 0.5 0.8 1 1 1.7l3.1 13.1c0.3 1.1 1.3 1.9 2.4 1.9 0.3 0 0.7-0.1 1.1-0.2 1.1-0.5 1.6-1.8 1.4-3l-2-8.4 -0.4-1.8c-0.7-2.9-2-5.7-4-8 -1-1.2-2-2.5-2.7-3.9C5.8 35.3 4.7 30.3 5.4 25 6.7 14.5 15.2 6.3 25.6 5.1c13.9-1.5 25.8 9.4 25.8 23 0 4.1-1.1 7.9-2.9 11.2 -0.8 1.4-1.7 2.7-2.7 3.9 -2 2.3-3.3 5-4 8L41.4 53l-2 8.4c-0.3 1.2 0.3 2.5 1.4 3 0.3 0.2 0.7 0.2 1.1 0.2 1.1 0 2.2-0.8 2.4-1.9l3.1-13.1c0.2-0.6 0.5-1.2 1-1.7 5-5.1 8.2-12.1 8.2-19.8C56.4 12 42.8-1 26.4 0.1zM43.7 69.6c0 0.5-0.1 0.9-0.3 1.3 -0.4 0.8-0.7 1.6-0.9 2.5 -0.7 3-2 8.6-2 8.6 -1.3 3.2-4.4 5.5-7.9 5.5h-4.1H28h-0.5 -3.6c-3.5 0-6.7-2.4-7.9-5.7l-0.1-0.4 -1.8-7.8c-0.4-1.1-0.8-2.1-1.2-3.1 -0.1-0.3-0.2-0.5-0.2-0.9 0.1-1.3 1.3-2.1 2.6-2.1H41C42.4 67.5 43.6 68.2 43.7 69.6zM37.7 72.5H26.9c-4.2 0-7.2 3.9-6.3 7.9 0.6 1.3 1.8 2.1 3.2 2.1h4.1 0.5 0.5 3.6c1.4 0 2.7-0.8 3.2-2.1L37.7 72.5z"></path></svg></span></div> 你也可以新建一個 <code class=" language-php"><span class="token punctuation">.</span>env<span class="token punctuation">.</span>testing</code> 文件。當在運行 PHPUnit 測試或者帶有 <code class=" language-php"><span class="token operator">--</span>env<span class="token operator">=</span>testing</code> 選項運行 Artisan 命令的時候,這個 <code class=" language-php"><span class="token punctuation">.</span>env<span class="token punctuation">.</span>testing</code> 文件會覆蓋掉 <code class=" language-php"><span class="token punctuation">.</span>env</code> 文件中對應的值。</p></blockquote><h4>獲取環境變量</h4><p>當你的應用程序收到請求時,這個文件所有的變量都會被加載到 PHP 超級全局變量 <code class=" language-php"><span class="token global">$_ENV</span></code> 里。你可以使用輔助函數 <code class=" language-php">env</code> 來獲取這些變量的值。事實上,如果你閱讀過 Laravel 的相關配置文件,你會注意到里面有幾個選項已經在使用著這個輔助函數!</p><pre class=" language-php"><code class=" language-php"><span class="token string">'debug'</span> <span class="token operator">=</span><span class="token operator">&gt;</span> <span class="token function">env<span class="token punctuation">(</span></span><span class="token string">'APP_DEBUG'</span><span class="token punctuation">,</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">,</span></code></pre><p><code class=" language-php">env</code> 函數的第二個參數是默認值,如果未找到對應的環境變量配置的話,此值就會被返回。</p><p>根據本機服務器或者正式環境的需求的不同,可自由修改環境變量。但是,<code class=" language-php"><span class="token punctuation">.</span>env</code> 文件不應該被提交到版本控制系統,因為每個開發人員或服務器在使用應用程序時,可能需要不同的環境配置。</p><p>不妨將 <code class=" language-php"><span class="token punctuation">.</span>env<span class="token punctuation">.</span>example</code> 文件放進你的應用程序,通過樣本配置文件里的預設值,團隊中的其他開發人員就可以清楚地知道,在運行你的應用程序時有哪些環境變量是必須有的。</p><p><a name="determining-the-current-environment"></a></p><h3>判定目前使用的環境</h3><p>應用程序的當前環境是由 <code class=" language-php"><span class="token punctuation">.</span>env</code> 文件中的 <code class=" language-php"><span class="token constant">APP_ENV</span></code> 變量所決定的。你可以通過 <code class=" language-php">App</code> <a href="/docs/5.4/facades">facade</a> 的 <code class=" language-php">environment</code> 方法來獲取該值:</p><pre class=" language-php"><code class=" language-php"><span class="token variable">$environment</span> <span class="token operator">=</span> <span class="token scope">App<span class="token punctuation">::</span></span><span class="token function">environment<span class="token punctuation">(</span></span><span class="token punctuation">)</span><span class="token punctuation">;</span></code></pre><p>你也可以傳遞參數至 <code class=" language-php">environment</code> 方法來確認當前環境是否與參數相符合:</p><pre class=" language-php"><code class=" language-php"><span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token scope">App<span class="token punctuation">::</span></span><span class="token function">environment<span class="token punctuation">(</span></span><span class="token string">'local'</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true"> // 當前正處于本地開發環境 </span><span class="token punctuation">}</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token scope">App<span class="token punctuation">::</span></span><span class="token function">environment<span class="token punctuation">(</span></span><span class="token string">'local'</span><span class="token punctuation">,</span> <span class="token string">'staging'</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token comment" spellcheck="true"> // 當前環境處于 `local` 或者 `staging` </span><span class="token punctuation">}</span></code></pre><p><a name="accessing-configuration-values"></a></p><h2><a href="#accessing-configuration-values">獲取設置值</a></h2><p>可以使用 <code class=" language-php">config</code> 輔助函數獲取你的設置值,設置值可以通過「點」語法來獲取,其中包含了文件與選項的名稱。你也可以指定一個默認值,當該設置選項不存在時就會返回默認值:</p><pre class=" language-php"><code class=" language-php"><span class="token variable">$value</span> <span class="token operator">=</span> <span class="token function">config<span class="token punctuation">(</span></span><span class="token string">'app.timezone'</span><span class="token punctuation">)</span><span class="token punctuation">;</span></code></pre><p>若要在運行期間修改設置值,請傳遞一個數組至 <code class=" language-php">config</code> 輔助函數:</p><pre class=" language-php"><code class=" language-php"><span class="token function">config<span class="token punctuation">(</span></span><span class="token punctuation">[</span><span class="token string">'app.timezone'</span> <span class="token operator">=</span><span class="token operator">&gt;</span> <span class="token string">'America/Chicago'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span></code></pre><p><a name="configuration-caching"></a></p><h2><a href="#configuration-caching">緩存配置信息</a></h2><p>為了讓應用程序的速度獲得提升,可以使用 Artisan 命令 <code class=" language-php">config<span class="token punctuation">:</span>cache</code> 將所有的配置文件緩存到單個文件。通過此命令將所有的設置選項合并成一個文件,讓框架能夠更快速的加載。</p><p>你應該將運行 <code class=" language-php">php artisan config<span class="token punctuation">:</span>cache</code> 命令作為部署工作的一部分。此命令不應該在開發時運行,因為設置選項會在開發時經常變動。</p><blockquote class="has-icon note"><p><div class="flag"><span class="svg"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" version="1.1" x="0px" y="0px" width="90px" height="90px" viewBox="0 0 90 90" enable-background="new 0 0 90 90" xml:space="preserve"><path fill="#FFFFFF" d="M45 0C20.1 0 0 20.1 0 45s20.1 45 45 45 45-20.1 45-45S69.9 0 45 0zM45 74.5c-3.6 0-6.5-2.9-6.5-6.5s2.9-6.5 6.5-6.5 6.5 2.9 6.5 6.5S48.6 74.5 45 74.5zM52.1 23.9l-2.5 29.6c0 2.5-2.1 4.6-4.6 4.6 -2.5 0-4.6-2.1-4.6-4.6l-2.5-29.6c-0.1-0.4-0.1-0.7-0.1-1.1 0-4 3.2-7.2 7.2-7.2 4 0 7.2 3.2 7.2 7.2C52.2 23.1 52.2 23.5 52.1 23.9z"></path></svg></span></div> 如果你在部署過程中執行 <code class=" language-php">config<span class="token punctuation">:</span>cache</code> 命令,你應該確保在你的配置文件中你只調用了 <code class=" language-php">env</code> 函數。</p><p>譯者注:更多 Laravel 程序調優技巧請參閱:<a href="https://phphub.org/topics/2020">Laravel 5 程序優化技巧</a></p></blockquote><p><a name="maintenance-mode"></a></p><h2><a href="#maintenance-mode">維護模式</a></h2><p>當你的應用程序處于維護模式時,所有傳遞至應用程序的請求都會顯示出一個自定義視圖。在你更新應用或進行性能維護時,這么做可以很輕松的「關閉」整個應用程序。維護模式會檢查包含在應用程序的默認的中間件堆棧。如果應用程序處于維護模式,則 <code class=" language-php">MaintenanceModeException</code> 會拋出 503 的狀態碼。</p><p>啟用維護模式,只需要運行 Artisan 命令 <code class=" language-php">down</code>:</p><pre class=" language-php"><code class=" language-php">php artisan down</code></pre><p>你可以指定 <code class=" language-php">dowm</code> 命令的 <code class=" language-php">message</code> 和 <code class=" language-php">retry</code> 選項。<code class=" language-php">message</code> 自定義顯示給用戶的信息,<code class=" language-php">retry</code> 作為 <code class=" language-php">Retry<span class="token operator">-</span>After</code> HTTP 標頭返回:</p><pre class=" language-php"><code class=" language-php">php artisan down <span class="token operator">--</span>message<span class="token operator">=</span><span class="token string">'Upgrading Database'</span> <span class="token operator">--</span>retry<span class="token operator">=</span><span class="token number">60</span></code></pre><p>關閉維護模式,請使用 Artisan 命令 <code class=" language-php">up</code>:</p><pre class=" language-php"><code class=" language-php">php artisan up</code></pre><h4>維護模式的響應模板</h4><p>維護模式的默認模板放在 <code class=" language-php">resources<span class="token operator">/</span>views<span class="token operator">/</span>errors<span class="token operator">/</span><span class="token number">503</span><span class="token punctuation">.</span>blade<span class="token punctuation">.</span>php</code>。你可以根據你的需求來修改這個模版</p><h4>維護模式與隊列</h4><p>當應用程序處于維護模式中時,將不會處理任何 <a href="/docs/5.4/queues">隊列工作</a>。所有的隊列工作將會在應用程序離開維護模式后被繼續運行。</p><h4>維護模式的替代方案</h4><p>維護模式有幾秒鐘的服務器不可用時間,如果你想做到平滑遷移的話,推薦使用 <a href="https://envoyer.io">Envoyer</a> 服務。</p></article>
                  <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>

                              哎呀哎呀视频在线观看