PHP set_error_handler()函数

PHP set_error_handler()函数

语法

mixed set_error_handler ( callback error_handler [, interror_types] );

定义和用法

这个函数可以用于在运行时定义自己处理错误的方式,例如在需要在关键错误发生时清理数据/文件的应用程序中,或者在需要在特定条件下触发错误时使用。

参数

序号 参数与描述
1 error_handler(必需) 它指定在错误时要运行的函数。error_handler的语法如下。
2 error_types(可选) 它指定用户定义的错误将在哪些错误报告级别下显示。默认为”E_ALL”。请参见”PHP Error and Logging Constants:”以获取可能的错误报告级别。

错误处理函数语法

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 inerrfile\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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程