我將標準.env檔案與CodeIgniter 4一起使用。此外,我想使用來自托管在同一服務器上的 React 應用程式的一些資訊。
我怎樣才能/root/ci4/.env一起使用,/root/react/.env以便我可以getenv('REACT_APP_FOO');在我的應用程式中使用?
當然,檔案中REACT_APP_*不存在變數名稱。/root/ci4/.env
uj5u.com熱心網友回復:
腳步:
打開
index.phpCodeIgniter 4 應用程式的公共路徑下的檔案/root/ci4/public。在檔案中的代碼行之前加載
.envReact 應用程式的檔案:$app->run();/root/ci4/public/index.php
// ...
// Load environment settings from .env file into $_SERVER and $_ENV
$envPath = ROOTPATH . ".." . DIRECTORY_SEPARATOR . "react";
$envFileName = ".env";
if (is_file($file = $envPath . DIRECTORY_SEPARATOR . $envFileName) && is_readable($file)) (new \CodeIgniter\Config\DotEnv($envPath, $envFileName))->load();
// ...
在哪里:
$envPath- 表示“React 應用程式”檔案的目錄路徑。假設它位于.env/root/react/.env$envFileName- 代表 “React 應用程式”的.env檔案名。\CodeIgniter\Config\DotEnv(...)->load()- 這個方法負責加載.env檔案并對其進行處理,以便我們最終獲得 PHP 環境變數中的所有設定(即getenv()、$_ENV和$_SERVER)。
額外說明:
一種。
如果
.env環境中已經存在變數,則 不會被覆寫。-環境變數和 CodeIgniter
這意味著在下定義的環境變數/root/react/.env 不會覆寫在下定義的類似環境變數/root/ci4/.env。
B.
警告:請注意,
.env檔案中的設定已添加到環境變數中。作為副作用,這意味著如果您的 CodeIgniter 應用程式(例如)生成一個var_dump($_ENV)或phpinfo()(出于除錯或其他有效原因)您的安全憑證是公開的。- 環境變數和 CodeIgniter
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/463158.html
標籤:反应 代码点火器 环境变量 codeigniter-4 dotenv
