XAMPPで環境変数$_ENVを有効化する方法

こんな方におすすめ

 ・ローカル環境でXAMPPを使っているが、環境変数が使えない(エラーが起こる)

 ・コードをいくら見直しても間違えてそうなところが見当たらない

原因は…環境変数$_ENVが無効になっているから!!

 PHPで環境変数$_ENVを使って、XAMPPローカル環境でいざ実行!…ところがエラー)

 コードの中から間違えを探しても、それっぽいところが見当たらない・・・

 おそらく↑のようなエラーが出ていると思います。この場合、コードが間違えているのではなく、phpの方で$_ENVが無効になっていることが原因である可能性があります。

 Undefined index というエラーは、未定義の配列の要素を使用している場合に出るエラーです。

 変数$_ENVは配列ですので、ここでいう未定義の配列とは$_ENVのことです。しかしながら、$_ENVというのは、スーパーグローバル変数ですので、私たちコードを書く人間が変数定義を行わなくても、予めPHPが準備してくれている変数です。したがって、定義を忘れているということではありません。

 何なのかと言いますと、phpの設定、具体的にはphp.iniで$_ENVが有効になっていないということになります!!

 というわけで、xamppでphp.iniの設定をいじりましょー!

php.iniで環境変数$_ENVを有効化

 XAMPPのコントロールパネルでApacheの[config]→[PHP(php.ini)]を開きます。

 その後、639行目付近に「variables_order = “GPCS”」とあると思いますので、そこを”GPCS”→”EGCPS”に書き換えてください。(見つからない場合は、Ctrl+Fで「variables_order」と検索してください。*メモ帳の場合)

 保存後、一度Apacheを停止してから、再起動して実行してください。おそらくできると思います。

 なお、開発環境によっては、$_ENVのキーを「PATH」ではなく、「Path」にしないとうまくいかない事がありますので、注意してください。(実際に私もそうでした。)