Php-function-set-error-handler

提供:Dev Guides
移動先:案内検索

PHP-関数set_error_handler()

構文

mixed set_error_handler ( callback $error_handler [, int $error_types] );

定義と使い方

この関数は、ランタイム中にエラーを処理する独自の方法を定義するために使用できます。たとえば、重大なエラーが発生した場合、または特定の条件下でエラーをトリガーする必要がある場合に、データ/ファイルのクリーンアップを行う必要があるアプリケーションで使用できます。

パラメーター

Sr.No Parameter & Description
1

error_handler(Required)

エラー時に実行される関数を指定します。 error_handlerの構文は次のとおりです。

2

error_types(Optional)

ユーザー定義エラーが表示されるエラーレポートレベルを指定します。 デフォルトは「E_ALL」です。 可能性のあるエラーレポートレベルについては、「PHPエラーおよびロギング定数:」を参照してください。

エラーハンドラー関数の構文

error_function(error_level,error_message, error_file,error_line,error_context);

ここにパラメータの説明があります-

  • errno -最初のパラメータerrnoには、発生したエラーのレベルが整数として含まれています。
  • errstr -2番目のパラメーターerrstrには、エラーメッセージが文字列として含まれています。
  • errfile -3番目のパラメーターはオプションです。errfileには、エラーが発生したファイル名が文字列として含まれています。
  • errline -4番目のパラメーターはオプションで、errlineにはエラーが発生した行番号が整数で含まれます。
  • errcontext -5番目のパラメーターはオプションです。errcontextは、エラーが発生した時点でアクティブなシンボルテーブルを指す配列です。

戻り値

以前に定義されたエラーハンドラ(存在する場合)を含む文字列、またはエラー時にNULLを返します。

以下は、この機能の使用法です-

<?php
   function customError($errno, $errstr, $errfile, $errline) {
      echo "Custom error: [$errno] $errstr\n";
      echo "Error on line $errline in $errfile\n";
      echo "Ending Script";

      die();
   }

  //set error handler
   set_error_handler("customError");
   $test = 0;

  //trigger error
   if ($test >  -1) {
      trigger_error("A custom error has been triggered");
   }
?>

これは、次の結果を生成します-

Custom error: [1024] A custom error has been triggered Error on line 16
in/home/cg/root/1531703/main.php
Ending Script