PHP
dotenv

PHP dotenv を素のPHPプロジェクトに導入する


PHP dotenvの導入方法です

https://github.com/vlucas/phpdotenv


なぜdotenvを利用するのか?

開発環境と本番環境でDB設定などの値が変わっても、環境設定のファイルを.envファイルに記述することで簡単に管理することができます。


 composerのインストール

composerを利用します。

ローカルとリモート両方でインストールが必要です。

ダウンロードはコチラ。

https://getcomposer.org/download/


プロジェクトのドキュメントルートに.envファイルを作成します。

touch .env


.envファイルの書き方の例

DB_HOST="localhost"

DB_USER="root"
DB_PASS="root"
DB_NAME="cms"


.envをロードする

アプリケーション側で、.envを読み込みます。

.envファイルのパスを引数に入れましょう。


例(.envが同階層にある場合)

$dotenv = new Dotenv\Dotenv(__DIR__);

$dotenv->load();


例(.envが1つ上の階層にある場合)

$dotenv = new Dotenv\Dotenv(__DIR__ . '/..');

$dotenv->load(__DIR__ . '/..');


getenvメソッドで定義した値を取得する

$host = getenv('DB_HOST');

echo $host; # lobalhost


注意点

.envファイルは環境ごとに異なるため、git管理の対象からは外しましょう。


補足

sshでローカルからサーバーにアップロードする場合の例です。

scp -r /Repository/.env hoge-user@hoge-user.sakura.ne.jp:/home/hoge-user/www/.env