PHPで環境変数についてどのように管理していますか?
「環境変数を扱うならこれ!」っていうライブラリがありますのでご紹介します。
環境変数って?
アプリケーションが異なる環境(開発、テスト、本番など)で動作する際に、設定を柔軟に変更できるような仕組みです。
こういった設定はGit管理をする必要がないですよね。これにより、セキュリティが向上し、異なる環境でのアプリケーションの設定変更が容易になります。
例えば、環境ごとに接続するDatabaseの情報が異なることって結構多いですよね。
そんな時に、PHP dotenv がいい感じに管理してくれます。
phpdotenvについて
簡単に...
PHP dotenvは、プロジェクトで環境変数を扱うためのライブラリです。
.env
ファイルから環境変数をアプリケーションに読み込む機能を提供します。
使い方
1. インストール
composer require vlucas/phpdotenv
2. .env
ファイルの設置
.env
DB_HOST=localhost
DB_NAME=app
DB_USER=root
DB_PASS=password
SLACK_CHANNEL_ID=hogehoge
SLACK_TOKEN=fugafuga
3. 環境変数のロード
以下は、.env
ファイルで定義した変数を読み込むための必要なステップです。
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__);
$dotenv->load();
上記の記述により、Globalで呼び出せるようになります。
$slack_token = getenv('SLACK_TOKEN');
$slack_token = $_ENV['SLACK_TOKEN'];
$slack_token = $_SERVER['SLACK_TOKEN'];
※ 一応...。getenv
は非推奨とのこと。
コメントつけれます
VAR="value" # comment
VAR=value # comment
.env
にコメントをつけることも可能みたい。
まとめ
めちゃくちゃ簡単ですので、一度試してみてください。