TP5.1 預定義環境變量


在 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 布局文件即可.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM