当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP set_error_handler()用法及代码示例



用法

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

定义和用法

此函数可用于定义您自己在运行时处理错误的方式,例如在发生严重错误时需要清理数据/文件的应用程序中,或者在某些情况下需要触发错误时。

参数

Sr.No 参数及说明
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− 第二个参数 errstr 包含字符串形式的错误消息。

  • errfile- 第三个参数是可选的,errfile,它包含引发错误的文件名,作为一个字符串。

  • errline- 第四个参数是可选的,errline,它包含引发错误的行号,作为一个整数。

  • errcontext− 第五个参数是可选的,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

相关用法


注:本文由纯净天空筛选整理自 PHP - Function set_error_handler()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。