多くの場合、PHP ファイルには、大きな白いページが出力されるなど、トラブルシューティングが非常に困難なエラーがいくつか含まれており、エラーを修正する方法はありません。 PHP のエラー レベルによって致命的ではないエラーがブロックされ、エラー プロンプトが表示されなくなる可能性があります。したがって、PHP のエラー レベルを理解し、慣れることが新しいデバッグ方法になる可能性があります。
php.ini のエラー報告レベル デフォルトでは、PHP エラー報告レベルは E_NOTICE です。E_ALL は、致命的ではないエラーをすべて報告することを意味します。これは、これらのエラーが大きな問題 (未定義の変数の使用など) を引き起こす可能性があるためです。
アラートとコーディング標準化警告を除くすべてのエラーを表示します。
エラーレポートはビットフィールドです。数値を合計して、必要なレベルのエラー レポートを得ることができます。
E_ALL - すべてのエラーと警告 (E_STRICT を除く)
E_ERROR - 致命的な実行時エラー
E_WARNING - 実行時警告 (致命的ではないエラー)
E_PARSE - コンパイル時の解析エラー
E_NOTICE - 実行時のリマインダー (コードのバグによって発生することがよくありますが、意図的なアクションによって発生することもあります。)
E_STRICT - エンコーディングの標準化に関する警告。PHP は、最適な相互運用性と上位互換性を確保するためにコードを変更する方法を推奨します。
E_CORE_ERROR - PHP 起動時の初期化中に致命的なエラーが発生しました
E_CORE_WARNING - PHP 起動時の初期化プロセス中の警告 (致命的ではないエラー)
E_COMPILE_ERROR - 致命的なコンパイル時エラー
E_COMPILE_WARNING - コンパイル時警告 (致命的ではないエラー)
E_USER_ERROR - ユーザー定義のエラー メッセージ
E_USER_WARNING - ユーザー定義の警告メッセージ
E_USER_NOTICE - ユーザー定義のリマインダーメッセージ
E_ALL | E_STRICT に設定すると、すべてのエラー情報が記録されるため、Web サイトに多数のエラー コードが表示される可能性がありますが、コードを最適化できるプログラマーにとっては良いことだと言えます。 ; 一部の致命的ではないエラーはプログラムの動作には影響しませんが、PHP の負荷が増加し、通常は Web サイトのプロセス (IIS のアプリケーション プールなど) の負荷が増加します。
PHP でのエラーレポートの微調整
発生したエラーを表示するように PHP を設定したら、エラー報告のレベルを調整することができます。 PHP インストール全体またはスタンドアロン スクリプトは、さまざまなエラー レベルを報告または無視するように設定できます。表 7-1 にはほとんどのレベルがリストされていますが、通常は 3 つのカテゴリのいずれかに分類されます:
l 注 (注意)、これはスクリプトの実行を妨げるものではなく、必ずしも問題になるわけではありません。
l 警告: 問題を示しますが、スクリプトの実行は妨げられません。
l スクリプトの続行を妨げるエラー (基本的にスクリプトの実行を妨げる一般的な解析エラーを含む)。
表 7-1 PHP エラー報告設定。error_reporting() 関数または php.ini ファイルで使用されます。 E_ALL の値は古いバージョンの PHP とは異なり、E_STRICT が含まれていないことに注意してください (ただし、PHP 6 には存在します)
いいえ
常に測定する |
レポート |
|
1
E_エラー |
致命的なランタイムエラー (スクリプトの実行を妨げます) |
|
2
E_警告 |
実行時警告 (致命的ではないエラー) |
|
(続き)
いいえ |
常に測定する |
レポート |
4 |
E_PARSE |
解析エラー |
8 |
E_NOTICE |
注(問題になる場合もあれば、問題にならない場合もあります) |
256 |
E_USER_エラー |
ユーザー生成のエラーメッセージ、trigger_error() 関数によって生成される |
512 |
E_USER_警告 |
ユーザー生成の警告、trigger_error() 関数によって生成される |
1024 |
E_USER_NOTICE |
ユーザー生成のアテンション、trigger_error() 関数によって生成される |
2048 |
E_STRICT |
互換性と相互運用性に関するアドバイス |
8191 |
E_ALL |
すべてのエラー、警告、提案 |
http://www.bkjia.com/PHPjc/477861.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/477861.html技術記事多くの場合、PHP ファイルには、大きな白いページが出力されるなど、トラブルシューティングが非常に困難なエラーがいくつか含まれており、エラーを修正する方法はありません。 PHP のレベルが間違っていると、致命的ではない機能がブロックされる可能性があります...