Route 36

ギジュツ的な事を書くブログ

PHPのエラー出力の有無をホスト名によって切り替える

学校の実験でPHPを書いていて、開発環境ではエラー出力をして、本番環境ではエラー出力をしないという事をしたくなったのでメモ。

gethostname()でホスト名を取得し、 preg_match() でlocalが含まれるかどうかを判定して、ini_set()で設定を変更。

if (preg_match('/local/', gethostname())) {
  ini_set('display_errors', 1); // エラー表示をON
} else {
  ini_set('display_errors', 0); // エラー表示をOFF
}

エラーの表示設定の変更自体は、php.iniファイルを編集すれば済む話なので、開発用サーバーと本番サーバーで書き換えればよい話なのだけど、学校の実習用サーバーだとそうもいかないので……。