【PHP自定义显示系统级别的致命错误和用户级别的错误】

时间:2024-07-27 22:07:38

使用方法set_error_handler可以自定义用户级别的错误和系统级别的错误信息显示和处理

用户级别的错误使用trigger_error方法产生一个用户级别的错误信息

代码示例:

系统级别的错误:

 <?php
//以下显示系统级别的错误,为语法错误等
function my_error($level,$info)
{
echo "出现了致命错误!<br/>错误级别:".$level."<br/>错误信息:".$info."<br/>";
}
set_error_handler("my_error");
$file=fopen("aaa.txt","r+");//打开不存在的文件,会出现致命错误
?>

用户级别的错误:

 <?php
function my_warning($level,$message)
{
echo "出现了警告错误!<br/>错误级别:".$level."<br/>错误信息:".$message."<br/>"; }
function my_notice($level,$message)
{
echo "出现了提示错误!<br/>错误级别:".$level."<br/>错误信息:".$message."<br/>";
}
function my_error($level,$message)
{
echo "出现了致命错误!<br/>错误级别:".$level."<br/>错误信息:".$message."<br/>";
die();//通过这个函数可以控制程序是否退出。
}
set_error_handler("my_warning",E_USER_WARNING);
set_error_handler("my_notice",E_USER_NOTICE);
set_error_handler("my_error",E_USER_ERROR);
$price=1000;
if($price>=1000)
{
trigger_error("出现了警告错误",E_USER_WARNING);
trigger_error("出现了提示错误!",E_USER_NOTICE);
trigger_error("出现了致命的错误!",E_USER_ERROR);
}
?>