error_reporting

出力する PHP エラーの種類を設定する

説明

int error_reporting(intnull $error_level = null)

error_reporting 関数は、 error_reporting ディレクティブを 実行時に設定します。PHP には多くのエラーレベルがあり、 この関数によりスクリプトの持続時間(実行時間)のレベルが設定されます。 オプションの error_level を指定しなかった場合は、 error_reporting は単に現在のエラーレベルを返します。

パラメータ

error_level

新しい error_reporting レベル。ビットマスクまたは名前つき定数のどちらかです。将来の バージョンとの互換性を保証するために、名前つき定数の使用が 強く推奨されています。エラーレベルが追加されると、整数の幅は増加します。 そのため、以前の整数を使用するエラーレベルは常に期待通りに動作するとは 限りません。

利用可能なエラーレベル定数とその実際の意味は、 定義済みの定数に 記述されています。

戻り値

error_level に変更される の、 error_reporting レベルを返します。

注意: エラー制御演算子 @ は、エラーハンドリングの間に error_level を変更します。

変更履歴

バージョン 説明
8.0.0 error_level は、nullable になりました。

例1 error_reporting の例

<?php

// 全てのエラー出力をオフにする
error_reporting(0);

// 単純な実行時エラーを表示する
error_reporting(E_ERROR E_WARNING E_PARSE);

// E_NOTICE を表示させるのもおすすめ(初期化されていない
// 変数、変数名のスペルミスなど…)
error_reporting(E_ERROR E_WARNING E_PARSE E_NOTICE);

// E_NOTICE 以外の全てのエラーを表示する
error_reporting(E_ALL & ~E_NOTICE);

// 全ての PHP エラーを表示する
error_reporting(E_ALL);

// 全ての PHP エラーを表示する
error_reporting(-1);

// error_reporting(E_ALL); と同じ
ini_set('error_reporting'E_ALL);

?>

注意

ヒント

値に -1 を指定すると、仮に将来のバージョンの PHP で新しいレベルと定数が追加されたとしてもすべてのエラーを表示するようになります。 E_ALL 定数も、これと同じ挙動になります。

参考