在TP5.1 中部分之前版本的預定義常數如APP_PATH、ROOT_PATH 等被定義為了項目的環境變數.
目前預先定義的環境變數包括(以項目路徑E:\wamp64\ www\project_name 為例):
think_path
: 系統框架目錄路徑, 如E:\wamp64\www\project_name \thinkphp\
root_path
: 專案路徑, 如E:\wamp64\www\project_name
#app_path
: 應用程式路徑, 如E:\wamp64\www\project_name\application\
#config_path
: 設定檔目錄路徑, 如: E:\wamp64\www\project_name\config\
route_path
: 路由檔案路徑: 如: E:\wamp64\ www\project_name\route\
runtime_path
: 執行階段目錄路徑: 如: E:\wamp64\www\project_name\runtime\
extend_path
: 擴充類別庫路徑, 如: E:\wamp64\www\project_name\extend\
vendor_path
: 第三方類別庫目錄路徑, 如: E:\wamp64\www\ project_name\vendor\
module_path
: 目前模組的路徑
管理環境變數
think\Env物件負責專案環境變數的存取.
設定環境變數
透過Env物件的set方法設定專案環境變數.
Env::set('name', 'value');
讀取環境變數
透過助手函數env()可以快速取得預先定義的環境變數。函數最終會呼叫Env物件中的get方法.
env('name'); // 参数为空时, 获取所有的项目环境变量 Env::get('name');
取得環境變數, 會先取得預先定義的項目環境變數, 如果沒有找到, 則會取得PHP 的環境變數. 都沒有找到時, 返回null. 但是在取得PHP 內建環境變數時, TP 框架會預設為變數名追加PHP_前綴, 需要取消自動追加變數名稱前綴:
env('document_root', null, false); // 第三个参数指定为false, 获取$_SERVER['DOCUMENT_ROOT']
應用程式: 為各個模組配置通用的模板佈局檔案
在template.php 中設定:
'layout_name' => env('app_path') . 'common/view/layout.html', // 以绝对路径的方式指定通用的布局文件
然後在common 目錄下的view 目錄建立layout.html 佈局檔即可.
推薦:《thinkPHP教學》
以上是TP5.1 預定義環境變數的詳細內容。更多資訊請關注PHP中文網其他相關文章!