🎵

symfony/dotenv で .env を読み込んでも getenv() が false になる

2021/05/11に公開

Symfony Framework ではなく symfony/dotenv を単体で composer require して使ってみました

getenv() で値が取れるはずなのに false が返ってきてしまいます
$_ENV を覗くとちゃんとセットされていたので、 .env ファイルの読み込みは成功している模様

調べた結果 symfony/dotenv はデフォルトでは putenv()行わない ということがわかりました
以下のように usePutenv を使う必要があります

$dotenv = new Dotenv();
$dotenv->usePutenv(true); // コレ
$dotenv->load(__DIR__ . '/.env');

Discussion