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 を使用します。
以下のスニペットをファイルに記述します。
この autoload.php で env.php をインクルードすることに注意してください。
これは、アプリがデプロイされる環境ごとに env.example.php から env.php が再作成されるためで、その特殊性から .gitignore に追加する必要があります。
設定が完了したら、先ほど述べたように、ディレクトリ内のファイルの自動ロード方法に応じて autoload.php ファイルを自動ロードするようにします。 コンポーザー以外のプロジェクトでは、このファイルを include "autoload.php";
経由で一般的なプロジェクトにインクルードします。