ホームページ >バックエンド開発 >PHPチュートリアル >PHP error_reporting エラー レベル変数比較表、errorreporting_PHP チュートリアル
PHP のすべてのエラー メッセージは、error_reporting() 関数を使用して設定できます:
パラメータは文字列と数値の2種類で表現でき、合計14段階ありますが、最初は一定のエラー報告間隔を指すものだと思っていました。やっとわかった法則
それでは、以下のようにまとめてみます
数字 | 定数 | 手順 |
1 | E_エラー | 致命的なエラー、スクリプトの実行が中断されました、つまり、スクリプトに認識できないものが表示されました 例: エラー: パラメータ名が無効です |
2 | E_警告 | コードの一部が間違っていますが、全体の動作には影響ありません 例: 警告: require_once(E:/include/config_base.php) |
4 | E_PARSE | 文字、変数、または終了場所が間違って書かれています 例: 解析エラー: 構文エラー、予期しない $end in |
8 | E_NOTICE | 変数が未定義であるなどの一般的な通知 例: 注意: 未定義の変数: E:webindex.php の 17 行目 |
16 | E_CORE_ERROR | PHPプロセスの開始時に致命的なエラーが発生しました 例: なし |
32 | E_CORE_WARNING | PHP起動時の警告(致命的ではないエラー) 例: なし |
64 | E_COMPILE_ERROR | コンパイル時の致命的なエラー 例: なし |
128 | E_COMPILE_WARNING | コンパイル時警告レベルのエラー 例: なし |
256 | E_USER_エラー | ユーザー定義のエラーメッセージ 例: なし |
512 | E_USER_警告 | ユーザー定義の警告メッセージ 例: なし |
1024 | E_USER_NOTICE | ユーザー定義のリマインダーメッセージ 例: なし |
2047 | E_ALL | E_STRICT エラー メッセージを除く上記のすべてのエラー メッセージ 例: なし |
2048 | E_STRICT | コーディング標準化の警告により、最適な相互運用性と上位互換性を確保するためにコードを変更する方法を PHP が提案できるようになります。 |
error_reporting 変数のデフォルト値は E_ALL および ~E_NOTICE です
開発時の最適な値は E_ALL | E_STRICT
error_reporting(E_ALL | E_STRICT) に設定すると、すべてのエラー情報を記録することになります
これにより、Web サイトに多数のエラー コードが表示される可能性がありますが、致命的ではないエラーはプログラムの動作に影響を与えませんが、コードを最適化できるプログラマにとっては良いことであると言えます。 、PHP の負担の問題を悪化させることになります。
最後に、英語版の比較表を投稿します:
1 | E_エラー | 致命的な実行時エラー。スクリプトの実行が停止されます。 |
E_警告 | 致命的ではない実行時エラー。スクリプトの実行は停止されません。 | |
E_PARSE | コンパイル時の解析エラーはパーサーによってのみ生成されるべきです | |
E_NOTICE | 実行時の通知。スクリプトでエラーの可能性があるものが見つかりましたが、スクリプトを通常に実行しているときにも発生する可能性があります | |
E_CORE_ERROR | PHP 起動時の致命的なエラー。これは PHP コアの E_ERROR に似ています。 | 32 |
PHP 起動時の致命的ではないエラー。これは PHP コアの E_WARNING に似ています。 | 64 | |
致命的なコンパイル時エラー。これは Zend スクリプト エンジンによって生成される E_ERROR に似ています。 | 128 | E_COMPILE_WARNING |
256 | E_USER_エラー | |
512 | E_USER_警告 | |
1024 | E_USER_NOTICE | ユーザー生成の通知。これは、PHP 関数trigger_error()を使用してプログラマによって設定されるE_NOTICEのようなものです |
2048 | E_STRICT | コードの相互運用性と互換性を高めるために、PHP はコードへの変更を提案します |
4096 | E_RECOVERABLE_ERROR | キャッチ可能な致命的なエラー。これは E_ERROR に似ていますが、ユーザー定義のハンドルによってキャッチできます (set_error_handler() も参照) |
8191 | E_ALL | レベル E_STRICT を除くすべてのエラーと警告 (E_STRICT は PHP 6.0 以降 E_ALL の一部になります) |
phpエラーレポート どのような種類のエラーレポートがあるのか |
PHP では、error_reporting(0) は何を意味しますか?
http://www.bkjia.com/PHPjc/840752.html
www.bkjia.com