# Introduction
學習一個框架, Ray 的想法是, 在深入理解底層實作的原理之前, 應該先知道這個框架的 使用方法
; 先學習怎麼使用這個前人造的輪子, 再學習怎麼樣造一個輪子。
所以本篇文章重點在於細讀官方文件, 並將內容理解後以 Q&A 的方式記錄下來, 加速學習以及查詢。
# Environment Configuration
如果使用 Composer 安裝, 專案內會有 .env
檔案嗎? 會哦, 會自動被 cp 一份
當執行 PHPUnit 時, 如何替換掉 .env? 建立 .env.testing
# Environment Variable Types
在 Laravel .env 檔中, 如果 value 是含有空白的字串, 該怎麼做?
<?php APP_NAME="My Application"
|
# Determining The Current Environment
以下的 Laravel example code 的意思是?
- Example:
<?php if (App::environment('local')) { }
if (App::environment(['local', 'staging'])) { }
|
- Answer:
判斷目前環境, 並做相對應的事
# Hiding Environment Variables From Debug Pages
當 Laravel 的環境變數 APP_DEBUG 為 true 時, 默認會輸出所有的環境變數以及內容, 假如我有一些變數不想顯示, 我可以怎麼做?
<?php
return [
'debug_blacklist' => [ '_ENV' => [ 'APP_KEY', 'DB_PASSWORD', ],
'_SERVER' => [ 'APP_KEY', 'DB_PASSWORD', ],
'_POST' => [ 'password', ], ], ];
|
# Accessing Configuration Values
在 Laravel 中, 若要取得 config 的值, 可以怎麼做?
<?php $value = config('app.timezone');
|
在 Laravel 中, 若要在程式碼中設定 config 的值, 可以怎麼做?
<?php config(['app.timezone' => 'America/Chicago']);
|
# Configuration Caching
php artisan config:cache 做了什麼事? 將所有的 config 檔案 cache 成一份檔案, 以加速運行
php artisan config:cache 建議在 production 還是 develop 運行? production
運行 php artisan config:cache 時, 會否讀 .env 檔? 不會哦
所有 Laravel 的設定檔都放在哪裡? config 資料夾底下
# Maintenance Mode
在 Laravel 中, 如果要啟動維護模式, 可以怎麼做?
在 Laravel 中, 如果要啟動維護模式, 並且客制 message 以及 retry 可以怎麼做?
php artisan down --message="Upgrading Database" --retry=60
|
在 Laravel 中, 以下的 –retry 代表什麼意思?
php artisan down --message="Upgrading Database" --retry=60
|
會設定一個 `Retry-After` HTTP header, 目前大概只有 Google Bot 會特別去偵測, 在你指定的 downtime 時間不會去爬你的網站
以下的 Laravel example command 的意思是?
- Example:
php artisan down --allow=127.0.0.1 --allow=192.168.0.0/16
|
- Answer:
在維護模式中, 僅僅對指定的 IP 開放
在 Laravel 維護模式中, queue job 還會被處理嗎?
不會哦
# Additional
Laravel 的時區設定檔位置在?
Laravel 當中, 哪裡可以設定 queue 的名字?
留言