当PHP向日志发出PHP Notice
时,它包含出现问题的文件名和行号。对于大型应用程序,这通常不足以重现该问题。真正有用的是一些其他信息,最明显的是在此通知发生时被调用的URL。
有没有一种方法可以自定义PHP> = 7中的PHP Notice
消息?
答案 0 :(得分:4)
创建您自己的错误处理程序并捕获通知,然后使用所需信息记录消息。下面的代码生成以下PHP错误日志文件。
[2019年2月27日13:55:09美国/纽约] 8未定义的变量:你好 来自URI /customnotice.php
function myErrorHandler($errno,$errstr, $errfile, $errline) {
if ($errno == 8) { // this is a notice
error_log($errno . ' ' . $errstr . ' from URI ' . $_SERVER['REQUEST_URI']);
}
}
$old_error_handler = set_error_handler("myErrorHandler");
echo $hello; // will throw a notice for testing