PHP日志函数重新声明问题
我把这个PHP日志函数重新声明问题,php,Php,我把这个PHP命名为logger\u error\u handler.PHPrequired,放在另一个文件中,比如foobar.PHP。它现在标记一个重新声明错误 <?php error_reporting(E_ALL); set_error_handler("logger_error_handler"); function logger_error_handler($errno, $errstr, $errfile=null, $errline=nul
PHP
命名为logger\u error\u handler.PHP
require
d,放在另一个文件中,比如foobar.PHP
。它现在标记一个重新声明错误
<?php
error_reporting(E_ALL);
set_error_handler("logger_error_handler");
function logger_error_handler($errno, $errstr, $errfile=null, $errline=null, $errcontext=null) {
$log = date("Y-m-d H:i:s - ");
$log .= "Error: [". $errno ."], $errstr in $errfile on line $errline, ";
$log .= "Variables: ". print_r($errcontext, true) ."\r\n";
error_log($log, 3, "error_log.log");
die("Error Found!");
}
?>
致命错误:无法在第12行的C:\xampp\htdocs\foo\bar\logger\u error\u handler.php:5中重新声明logger\u error\u handler()(以前在C:\xampp\htdocs\foo\bar\logger\u error\u handler.php中声明)第05行:参考功能声明
第12行:指上述功能的结束标签
我错过了什么?对我来说似乎没有重新声明,但我无法确定是什么原因造成的 将include语句更改为include\u一次。您将从多个文件中包括logger\u error\u handler.php。 一个“脏”选项是将include()更改为include_once(),甚至是require_once()
但是,您也应该尝试查看为什么文件包含多次,像这样的文件应该主要包含在“loader.inc.php”文件等中,每个页面只调用一次。谢谢。我非常专注于
05
和12
中的内容,我忘记了require
与require\u once
相比是如何工作的。。。这些模棱两可的错误请你接受我的答案,因为它是正确的,首先?