PHP 自定义错误日志

Posted 想她

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 自定义错误日志相关的知识,希望对你有一定的参考价值。

<?php
//错误处理函数
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
    $log_file = "./php_%s_log_".date("Ymd").".log";//定义日志文件存放目录和文件名
    $template = ‘‘;
    switch ($errno) {
        case E_USER_ERROR:
            $template .= "用户ERROR级错误,必须修复 错误编号[$errno] $errstr ";
            $template .= "错误位置 文件$errfile,第 $errline 行\n";
            $log_file = sprintf($log_file,‘error‘);
            exit(1);//系统退出
            break;
        case E_USER_WARNING:
            $template .= "用户WARNING级错误,建议修复 错误编号[$errno] $errstr ";
            $template .= "错误位置 文件$errfile,第 $errline 行\n";
            $log_file = sprintf($log_file,‘warning‘);
            break;
        case E_USER_NOTICE:
            $template .= "用户NOTICE级错误,不影响系统,可不修复 错误编号[$errno] $errstr ";
            $template .= "错误位置 文件$errfile,第 $errline 行\n";
            $log_file = sprintf($log_file,‘notice‘);
            break;
        default:
            $template .= "未知错误类型: 错误编号[$errno] $errstr  ";
            $template .= "错误位置 文件$errfile,第 $errline 行\n";
            $log_file = sprintf($log_file,‘unknown‘);
            break;
    }
    file_put_contents($log_file,$template,FILE_APPEND);
    return true;
}
$error_handler = set_error_handler("myErrorHandler");//开启自定义错误日志








echo $a;

 

以上是关于PHP 自定义错误日志的主要内容,如果未能解决你的问题,请参考以下文章

PHP错误处理

PHP笔记-所有错误统一输出404页面(详细错误日志输出,提高安全性)

通过自定义错误页面处理 PHP / mysql 错误(包括致命错误)

在片段中创建自定义列表视图时出错。必需的活动,找到的片段

Laravel之加密解密/日志/异常处理及自定义错误

在片段中创建自定义列表视图时出错所需活动,找到片段