ホームページ  >  記事  >  バックエンド開発  >  PHP 例外およびエラー処理メカニズム

PHP 例外およびエラー処理メカニズム

WBOY
WBOYオリジナル
2016-08-08 09:19:30778ブラウズ

php 例外およびエラー処理メカニズム


実際の開発では、エラーと例外をキャプチャするために try{}catch() のみに依存するだけでは十分ではありません。 したがって、次の関数を引用します。

まず例外について話しましょう:

まず第一に、例外とエラーは異なるものであることを理解する必要があります。一方、エラーは、未定義の変数の使用など、実行時のエラーを指します。例外をキャッチするにはスローする必要があり、エラーが発生するとプログラムの実行が終了します

1。例外を処理する通常の方法は、 throw

[ php] ビューによってスローされた例外をキャッチするために try{}catch{} を使用することです。 普通のコピー

  1. try{
  2. ); } catch(例外$e ){
  3. エコー
  4. $e ->getMessage(),
  5. "
    "
  6. ,$e ->getTraceAsString() 2. 例外を設定します。取り扱いこの場合、try{}catch{} がなくても、set_Exception_handler 関数によってスローされた例外を自動的に設定できます。 [php] ビュー 普通のコピー
  7. set_Exception_handler(
  8. '例外ハンドラー'
  9. );


関数

例外ハンドラー(例外

$例外

    ){
  1. getMessage();
  2. 次にエラーについて説明します:
  3. 通常、プログラムに問題が発生すると、PHP はデバッグに役立つエラー情報を出力します。この情報の出力は、error_reporting() 関数を通じて制御できます。 PHP のエラーはレベルとタイプに分けられます。以下はすべてのエラー タイプの説明です: 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 - ユーザー定義のリマインダー メッセージ
  4. error_reporting(E_NOTICE) が設定されている場合、プログラムは E_NOTICE レベルの情報のみを出力します。通常は、error_reporting( を設定する必要があるだけです) E_ALL&!E_WARNING) 上に、ユーザー定義のエラー メッセージ というエラーが表示されています。まずは例を見てみましょう[php]ビュー 普通のコピー
    1. set_error_handler('errorHandler');
    2. trigger_error("aaaaaaasssssssssss",E_USER_ERROR);
    3. 関数
    4. errorHandler($errno, $errstr){ "white-space:pre"
    5. >/span>if($errno ==E_USER_ERROR ){ "white-space:pre"
    6. > $errstr"white-space:pre"; > } "white-space:pre"> 結果:
    7. [php]ビュー 普通のコピー
    8. innnnnnnni:aaaaaaasssssssssssss trigger_error() は、ユーザー定義のエラー メッセージをスローするために使用される関数です。これにより、重大なロジックの問題
    9. など、エラーとして扱われるいくつかのカスタマイズされたメッセージをスローできます。
    10. 上記のプログラムでは、プログラムエラーが発生したときに、デフォルトで Php にエラーメッセージを出力させるだけでなく、独自のエラー処理関数を設定することもできることがわかります。設定方法は set_error_handler()
    11. です。Take に従ってみましょう。例
    [php] ビュー 普通のコピー

      set_error_handler(
    1. 'errorHandler');ちょ
    $ cc


    ;

    //$ccが定義されていない場合、エコーはエラーになります

    function

    errorHandler(
    1. $errno,$errstr){
    2. if ($エラー ==E_NOTICE){
    3. ; } }
    4. 出力結果:
    5. ddddddddddddinnnnnnnni:未定義変数: cc 上記では、PHP の例外とエラー処理メカニズムを、関連コンテンツも含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。