ホームページ >バックエンド開発 >PHPチュートリアル >PHP error_reporting エラー レベル変数比較表、errorreporting_PHP チュートリアル

PHP error_reporting エラー レベル変数比較表、errorreporting_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:23:211004ブラウズ

PHPのerror_reportingエラーレベル変数比較表、errorreporting

PHP のすべてのエラー メッセージは、error_reporting() 関数を使用して設定できます:

パラメータは文字列と数値の2種類で表現でき、合計14段階ありますが、最初は一定のエラー報告間隔を指すものだと思っていました。やっとわかった法則

コードをコピー コードは次のとおりです:
error_reporting( 7 ) = error_reporting( 1+2+4)= error_reporting(E_ERROR | E_WARING | E_PARSE)

それでは、以下のようにまとめてみます

数字 定数 手順
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 の負担の問題を悪化させることになります。


最後に、英語版の比較表を投稿します:

2E_警告致命的ではない実行時エラー。スクリプトの実行は停止されません。 481632E_CORE_WARNINGPHP 起動時の致命的ではないエラー。これは PHP コアの E_WARNING に似ています。 E_COMPILE_ERROR128E_COMPILE_WARNING致命的ではないコンパイル時エラー。これは Zend スクリプト エンジンによって生成される E_WARNING のようなものです。 これは、プログラマが PHP 関数trigger_error()を使用して設定した E_ERROR に似ています致命的ではないユーザー生成の警告。これは、プログラマーが PHP 関数trigger_error()を使用して設定する E_WARNING に似ています。 1024E_USER_NOTICEユーザー生成の通知。これは、PHP 関数trigger_error()を使用してプログラマによって設定されるE_NOTICEのようなものです2048E_STRICTコードの相互運用性と互換性を高めるために、PHP はコードへの変更を提案します4096E_RECOVERABLE_ERRORキャッチ可能な致命的なエラー。これは E_ERROR に似ていますが、ユーザー定義のハンドルによってキャッチできます (set_error_handler() も参照)8191E_ALLレベル E_STRICT を除くすべてのエラーと警告 (E_STRICT は PHP 6.0 以降 E_ALL の一部になります)phpエラーレポート どのような種類のエラーレポートがあるのか​​
1 E_エラー 致命的な実行時エラー。スクリプトの実行が停止されます。
E_PARSE コンパイル時の解析エラーはパーサーによってのみ生成されるべきです
E_NOTICE 実行時の通知。スクリプトでエラーの可能性があるものが見つかりましたが、スクリプトを通常に実行しているときにも発生する可能性があります
E_CORE_ERROR PHP 起動時の致命的なエラー。これは PHP コアの E_ERROR に似ています。
64
致命的なコンパイル時エラー。これは Zend スクリプト エンジンによって生成される E_ERROR に似ています。
256 E_USER_エラー
512 E_USER_警告
error_reporting()

php には 4 種類のエラーと警告があります。

通常の関数エラー: 1
通常の警告: 2
分析エラー: 4
コメント (このメッセージは無視してもよいことをユーザーに警告しますが、この問題によりコードにエラーが発生する可能性があります): 8
の背後にある情報4 つの数字は情報タイプの値を表し、それらがエラー報告レベルとして加算されます。プロヴィンスのレポートレベルは 7 (つまり 1+2+4)、または「コメント」を除くその他の組み合わせです。このレベルは、php3.ini ファイル内のエラー報告命令を変更することで変更できます。ユーザーの httpd.conf ファイルで php3 エラー報告方法を変更するか、実行時にスクリプト言語関数 error_reporting() を使用して設定することもできます





PHP では、error_reporting(0) は何を意味しますか?


PHP がタイプミスを報告しないようにします。閉じられていない場合は、このようなエラーが発生します

警告: preg_match()
閉じられている場合は表示されません




http://www.bkjia.com/PHPjc/840752.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/840752.html技術記事 PHP の error_reporting エラー レベル変数比較テーブル、errorreporting PHP のすべてのエラー情報は、error_reporting() 関数を使用して設定できます。そのパラメーターには文字列と数値の両方が含まれます...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。