多くのフレームワークは現在、ルート ディレクトリの .env ファイルを使用して環境変数を構成しています。PHP 自体はこのファイルを解析しません。このファイルを読み取って解析するには、PHP コードを使用する必要があります。環境変数に入れてください。
たとえば、thinkphp で .env ファイルの読み込みプロセスを表示するには、次の strace コマンドを使用して、fpm プロセス stat ファイルのステータスを表示します。
strace $(pidof 'php-fpm'|sed 's/\([0-9]*\)/-p \1/g') -e stat -s 1024
返される項目は、.env ファイルが存在するかどうかを確認することです。
[pid 11692] stat("/data1/mailLog/public/phpdev/xxx/xxx/.env", 0x7fff6ba5f9f0) = -1 ENOENT (No such file or directory)
処理されるコードは次の文です
if (is_file(ROOT_PATH . '.env')) { $env = parse_ini_file(ROOT_PATH . '.env', true); foreach ($env as $key => $val) { $name = ENV_PREFIX . strtoupper($key); if (is_array($val)) { foreach ($val as $k => $v) { $item = $name . '_' . strtoupper($k); putenv("$item=$v"); } } else { putenv("$name=$val"); } } }
関連する php の知識については、php チュートリアル をご覧ください。
以上がPHP フレームワークでの .env ファイルの読み込みプロセスについての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。