-
Notifications
You must be signed in to change notification settings - Fork 0
/
logger.php
30 lines (29 loc) · 1.02 KB
/
logger.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
set_error_handler("app_error_logger");
function LogArray($array, $file = "log_array.log")
{
LogMessage(GetArrayToString($array), $file);
}
function LogMessage($messaggio, $file = "log_error.log", $backtrace = false)
{
$timestamp = date("d/m/Y - H:i:s");
$line = "$timestamp: $messaggio\n".($backtrace ? GetArrayToString(debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS))."\n" : "");
file_put_contents ("$file", $line, FILE_APPEND | LOCK_EX);
}
function GetArrayToString($array)
{
$content = "";
if(!empty($array))
{
foreach($array as $key=>$value)
$content = $content."$key".(is_array($value) ? ":\n{ ".GetArrayToString($value)."}" : " = ".$value)."\n";
}
return $content;
}
function app_error_logger($errno, $errstr, $errfile, $errline)
{
$message = "[$errno] $errstr : line $errline in file $errfile";
LogMessage($message, "php_warnings.log", true);
return false;
}
?>