【PHP】違う階層の.envを読み込む

以前の記事で同階層にある.envを読み込む方法をやりました。

【PHP】環境変数(.env)を読み込む

違う階層にあるファイルを読み込むときはひとクセあります。

下記のような階層になっているとします

.
├── composer.json
├── composer.lock
├── dir1
│   ├── index.php
└── vendor
|
└──.env

この状況のindex.phpからvendorディレクトリと.envを読み込むときは以下のように書きます。

require dirname(__FILE__).'/../vendor/autoload.php'; //vendorディレクトリの階層を指定する
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__. '/..'); //.envの階層を指定する
$dotenv->load();