PHP のデフォルトのエラー出力設定は、php.ini の中で以下のように定義されています。
error_reporting = E_ALL & ~E_NOTICE
display_errors = On
error_reporting はエラーの出力レベルを示しており、次のような値を指定できます。
E_PARSE – 構文エラー(実行前にチェックされる)E_ERROR – 実行時の致命的エラーE_WARNING – 実行時の警告(重要)E_NOTICE – 実行時の警告E_DEPRECATED – 廃止予定の文法、関数が使用されている (PHP 5.3)E_STRICT – 非推奨な記述がある(コンパイル時に発生するものもあり)上記に加えて、E_ALL が用意されており、これを指定すると、基本的に全てのチェックが行われるようになります。
ただし、E_STRICT だけは E_ALL に含まれていないため、E_STRICT レベルの警告を表示する場合は、E_ALL | E_STRICT と指定する必要があります。
; 本番環境(E_NOTICE, E_DEPRECATED, E_STRICT 以外を表示)
error_reporting = E_ALL ^ E_NOTICE ^ E_DEPRECATED
; 開発環境(全て表示)
error_reporting = E_ALL | E_STRICT
PHP コード内で動的にエラー出力設定を変更するには、error_reporting() 関数でエラーレベルを設定し、ini_set() 関数でエラー表示の有効無効を切り替えます。
<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 'On');