diff options
author | matthieu_ <matthieu_@59fd770c-687e-43c8-a1e3-f5a4ff64c105> | 2007-07-24 16:57:04 +0400 |
---|---|---|
committer | matthieu_ <matthieu_@59fd770c-687e-43c8-a1e3-f5a4ff64c105> | 2007-07-24 16:57:04 +0400 |
commit | a105bf4d9021d0e0f003d06418e6002fc7cfb16e (patch) | |
tree | 83a11cf9d9f02aaa41b0b7c93674eea72abe7912 /modules/ErrorHandler.php | |
parent | e7c34bf93ae288f17ec1402660e9e5a83e1cb72e (diff) |
First code commit
(from subclipse)
Diffstat (limited to 'modules/ErrorHandler.php')
-rwxr-xr-x | modules/ErrorHandler.php | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/modules/ErrorHandler.php b/modules/ErrorHandler.php new file mode 100755 index 0000000000..5a30682815 --- /dev/null +++ b/modules/ErrorHandler.php @@ -0,0 +1,35 @@ +<?php +function Piwik_ErrorHandler($errno, $errstr, $errfile, $errline) +{ + $errno = $errno & error_reporting(); + if($errno == 0) return; + if(!defined('E_STRICT')) define('E_STRICT', 2048); + if(!defined('E_RECOVERABLE_ERROR')) define('E_RECOVERABLE_ERROR', 4096); + print "\n<div style='word-wrap: break-word; border: 3px solid red; padding:4px; width:70%; background-color:#FFFF96;'><b>"; + switch($errno){ + case E_ERROR: print "Error"; break; + case E_WARNING: print "Warning"; break; + case E_PARSE: print "Parse Error"; break; + case E_NOTICE: print "Notice"; break; + case E_CORE_ERROR: print "Core Error"; break; + case E_CORE_WARNING: print "Core Warning"; break; + case E_COMPILE_ERROR: print "Compile Error"; break; + case E_COMPILE_WARNING: print "Compile Warning"; break; + case E_USER_ERROR: print "User Error"; break; + case E_USER_WARNING: print "User Warning"; break; + case E_USER_NOTICE: print "User Notice"; break; + case E_STRICT: print "Strict Notice"; break; + case E_RECOVERABLE_ERROR: print "Recoverable Error"; break; + default: print "Unknown error ($errno)"; break; + } + print ":</b> <i>$errstr</i> in <b>$errfile</b> on line <b>$errline</b>\n"; + print("<br><br>Backtrace --><DIV style='font-family:Courier;font-size:10pt'>"); + + ob_start(); + debug_print_backtrace(); + $out1 = ob_get_clean(); + print(str_replace("\n", "<br>", $out1)); + print("</div><br><br>"); + print "\n</pre></div><br>"; +} +?> |