03. 開啟調試與配置文件
1.開啟調試
2.配置文件
本節課我們來開啟壹下系統的調試功能,以及簡單理解下框架配置信息。
1. 在開發階段,我們建議開啟框架的調試模式;
2. 調試模式開啟後,會犧牲壹些執行效率,但大大提高了開發排錯的能力;
3. 當項目部署到生產環境時,再關閉調試模式即可;
4. 安裝好的 TP6.0 默認並沒有開啟調試,可以在域名後面胡亂輸入字符回車;
5. 此時,頁面只會提示:“頁面錯誤,請稍後再試~”,表示調試未開啟;
6. 通過命令行安裝的 TP6.0,會自動在根目錄生成壹個.example..env 文件;
7. 這個.env 文件是環境配置文件,我們只要刪除前面的.example.即可生效;
8. 此時,刷新頁面,右下角會出現 Trace 調試小圖標,說明調試開啟了;
9. 查看.env 文件,打開調試的環境變量為 APP_DEBUG = true,false 關閉;
10. 那麽,開啟調試模式有那些顯著的優勢呢?
a. 記錄系統運行流程的執行過程;
b. 展示錯誤和調試信息,並開啟日誌記錄;
c. 模版修改可以及時生效(不會被緩存幹擾);
d. 啟動右下角的 Trace 調試功能,更加強大;
e. 發生異常時,也會顯示異常信息;
11. 當然,還有壹種模式,就是關閉調試的時候,也可以顯示簡要的錯誤信息;
12. 首先,關閉調試模式:APP_DEBUG = false;
13. 然後,根目錄下 config 的 app.php 最後壹樣設置為:
'show_error_msg' => true,
1. 配置文件有兩種形式,開啟調試我們采用的.env 文件這是壹種,適合本地;
2. 另壹種配置文件,在根目錄下的 config 裏,有很多類型的配置,適合部署;
3. 官方手冊明確表示:.env 環境變量用於本地開發測試,部署後會被忽略;
4. 那麽,我們怎麽去獲取這些配置文件的值呢?
5. 對於.env 文件,比如[DATABASE]下的 HOSTNAME = 127.0.0.1 獲取方式如下:
use think\facade\Env;
return Env::get('database.hostname');
6. 對於 config 文件,比如 database.php 下的 hostname,獲取方式如下:
use think\facade\Config;
return Config::get('database.connections.mysql.hostname');
7. 也可以判斷這兩種文件的配置是否存在,使用 has 方法判斷:
echo Env::has('database.hostname');
echo Config::has('database.connections.mysql.hostname');
8. 關於這兩種配置文件的優先級,在本地測試時.env 優先於 config;
9. 從 config 配置中可以看出,它是先讀取.env 的,然後再默認配置壹個自己的;
10. 而到了部署環境,.env 會被忽略,則自動切換到 config 配置;