php エラー レベルは次のとおりです: 1. E_ERROR 致命的な実行時エラー、通常は回復不可能; 2. E_WARNING 実行時警告 (致命的ではないエラー); 3. E_PARSE コンパイル時構文解析エラー; 4. E_CORE_ERROR は致命的なエラーです5. E_CORE_WARNING は初期化起動処理中に発生する警告(致命的ではないエラー) 6. E_COMPILE_ERROR 7. E_COMPILE_WARNING など
このチュートリアルの動作環境: Windows7 システム、PHP8 バージョン、DELL G3 コンピューター
私たちのプログラム開発では、よく次のような問題が発生します。プログラム実行エラーが発生した場合、PHP はプログラムのエラー レベルに応じて異なるプロンプトを表示します。例えば、警告やエラーなどですが、これらのエラーは設定することができ、軽微なエラーであれば報告されないようにすることができます。
php のエラー レベル:
4 (整数) )##32##64##128##E_COMPILE_WARNINGinteger(integer##512##1024##E_RECOVERABLE_ERROR() PHP 5.2.0 以降##E_DEPRECATED# (整数)##16384 ユーザーが生成した警告メッセージ。 #30719出力されるすべてのエラーおよび警告メッセージ。PHP でエラー報告レベルを設定する方法:
1. PHP 構成ファイル php.ini を変更します。
この方法で error_reporting を設定した後、Web サーバーを再起動すると、設定が永続的に有効になります。
設定ファイル php.ini を開いて、次のようにエラー報告レベル error_reporting のデフォルト値を確認します。
1 |
|
これは、E_DEPRECATED と E_STRICT を除くすべてのエラーを報告することを意味します。
これを次のように変更します:
1 |
|
これは、E_NOTICE を除くすべてのエラーを報告することを意味します。これは最も一般的に使用されるエラー報告レベルでもあり、アテンション クラスのエラー (未定義変数の使用など) は報告されません。
保存して、Web サーバーを再起動した後に有効になります。
2. error_reporting() 関数を使用します
このように設定すると、すぐに有効になります。ただし、現在のスクリプトの error_reporting() 関数呼び出しの背後の領域のみです。
1 |
|
パラメータには、整数または対応する定数識別子を指定できます。定数形式を使用することをお勧めします。戻り値は、現在の場所で有効なエラー報告レベルの値 (整数値) です。
注: 設定ファイル php.ini の display_errors のデフォルト値は On で、これはエラー プロンプトが表示されることを意味します。Off に設定すると、すべてのエラー プロンプトがオフになります。
error_reporting(0) を使用するか、関数の前に # を追加してエラー出力を抑制し、エラー メッセージによる機密情報の漏洩を防ぎます。
パラメータ レベル
新しい error_reporting レベル。ビットマスクまたは名前付き定数を使用できます。
将来のバージョンとの互換性を確保するために、名前付き定数を使用することをお勧めします。エラー レベルの追加と整数値の範囲の増加により、
古い整数ベースのエラー レベルは常に期待どおりに動作するとは限りません。
レベルの可能な値 (php のエラー報告レベル)
共通: 合計約 15
#15 はバイナリの 15 に対応しますビット。
上の表のフィールドは静的ではないことに注意してください。PHP バージョンが異なると、値も異なる場合があります。
上記のオプションは、任意の数で「or」で接続できます ( OR または |) を使用して、必要なエラー レベルをすべて報告します。
たとえば、次のコードはユーザー定義のエラーと警告をオフにし、特定の操作を実行した後、元のエラー レベルに戻ります。
例:
1 2 3 4 5 6 7 8 9 10 11 |
|
変換関係:
E_All: 10 進数は 30719、2 進数に変換すると 111011111111111
1 |
E_ERROR (整数)
| 致命的な実行時エラー。このタイプのエラーは、メモリ割り当てによって引き起こされる問題など、通常は回復不可能な状況です。その結果、スクリプトは終了し、実行が続行されなくなります。 | |
##2 | ##E_WARNING (整数) )実行時警告 (致命的ではないエラー)。プロンプト メッセージのみが表示されますが、スクリプトは終了しません。 |
||
##E_PARSE |
(整数) ) コンパイル時の構文解析エラー。解析エラーはパーサーによってのみ生成されます。
|
##8 |
|
##E_NOTICE |
実行時通知。スクリプトでエラーとして表示される可能性のある状況が発生したことを示しますが、正常に実行できるスクリプトでも同様の通知が表示される可能性があります。
|
||
16 |
E_CORE_ERROR (integer) |
PHP で初期化する起動中に致命的なエラーが発生しました。このエラーは E_ERROR に似ていますが、PHP エンジン コアによって生成されます。 |
PHP 4 以降 |
##E_CORE_WARNING( integer) PHP の初期化起動中に発生した警告 (致命的ではないエラー)。 |
E_WARNING に似ていますが、PHP エンジン コアによって生成されます。 PHP 4 以降 |
||
##E_COMPILE_ERROR | (integer) 致命的なコンパイル時エラー。 E_ERROR |
に似ていますが、Zend スクリプト エンジンによって生成されます。 PHP 4 以降
| |
( | ) コンパイル時の警告 (致命的ではないエラー)。 E_WARNING に似ていますが、Zend スクリプト エンジンによって生成されます。 |
PHP 4 以降 ##256
|
##E_USER_ERROR |
) | ユーザーによって生成されたエラー メッセージ。 E_ERROR と似ていますが、ユーザーがコード内で PHP 関数 trigger_error() を使用して生成されます。 |
PHP 4 以降 | |
##E_USER_WARNING( integer) ユーザーによって生成された警告メッセージ。 |
E_WARNING と似ていますが、ユーザーがコード内で PHP 関数 trigger_error() を使用して生成されます。 PHP 4 以降 |
||
##E_USER_NOTICE | (integer) ユーザーによって生成された通知情報。 E_NOTICE |
と似ていますが、ユーザーがコード内で PHP 関数 trigger_error() を使用して生成されます。 PHP 4 以降
|
##2048 |
E_STRICT | ( integer) PHP のコード変更の提案を有効にして、コードの最高の相互運用性と上位互換性を確保します。 PHP 5 以降
|
##4096 | |
integer |
捕捉できる致命的なエラー。これは、潜在的に危険なエラーが発生したが、PHP エンジンが不安定になる原因ではなかったことを示します。エラーがユーザー定義のハンドラーによって捕捉されない場合、 E_ERROR となり、スクリプトは終了します。
| ##8192 |
|
実行時通知。有効にすると、将来のバージョンで正しく動作しなくなる可能性があるコードについて警告が表示されます。 | PHP 5.3.0 以降 | ||
E_USER_DEPRECATED (integer )
|
E_DEPRECATED と似ていますが、コード内で PHP 関数 trigger_error() を使用してユーザーによって生成されます。 #PHP 5.3.0 以降 |
||
##E_ALL | # (整数) E_STRICT
| PHP 5.3.x では 30719、PHP 5.2.x では 6143、以前は 2047
|
以上がPHP のエラー レベルはどれくらいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。