Laravel や Symphony の .env のような環境変数ファイルを作成する方法

Web アプリケーションをデプロイする際に、デプロイ前にサーバーの資格情報でデータベース構成を設定したり、サーバーに行って資格情報を編集する必要がない方法を考えたことがありますか。

Laravel や Symphony などの PHP フレームワークに精通していれば、それらの .env ファイルについて知っていなければならないでしょう。 これは、データベース資格情報からメールサービス資格情報まで、そして、環境 (ローカル/開発、ステージング、本番) に固有であるべきだと思うものは何でも、すべてのローカル変数を設定する場所です。

これら 2 つの PHP 関数が、Laravel の .env ファイルに隠されている秘密です。 その名前が示すように、1 つは環境変数 putenv() を設定するために使用され、もう 1 つは変数 getenv() を取得するために使用されます。

http://php.net/manual/en/function.getenv.php
http://php.net/manual/en/function.putenv.php

プロジェクトにこれらを実装するには?

CREATE AN env.example.php FILE

この .example は何だろうとお思いでしょうが、ループが含まれます。 これは、env.php としてコピー&ペーストするファイルです。 これは環境に特化したファイルなので、.gitignoreにenv.phpを追加することを覚えておいてください。

その前に、以下のスニペットをファイルに入れます。

さらに変数を追加することもできます。

ただし、この記事では autoload.php を使用します。

以下のスニペットをファイルに記述します。

このファイルが env.example.php ファイルと同じディレクトリにあることを確認します

この autoload.php で env.php をインクルードすることに注意してください。
これは、アプリがデプロイされる環境ごとに env.example.php から env.php が再作成されるためで、その特殊性から .gitignore に追加する必要があります。

設定が完了したら、先ほど述べたように、ディレクトリ内のファイルの自動ロード方法に応じて autoload.php ファイルを自動ロードするようにします。 コンポーザー以外のプロジェクトでは、このファイルを include "autoload.php";

経由で一般的なプロジェクトにインクルードします。

コメントを残す

メールアドレスが公開されることはありません。