source: trunk/src/class/ErrorHandler.class.php@ 7628

Last change on this file since 7628 was 7627, checked in by Pieter Naber, 15 years ago

Added new classes for creating KMLFiles.

File size: 6.0 KB
Line 
1<?
2/*
3 * Project: NodeMap2.0
4 * File: ErrorHandler.class.php
5 * Purpose: Handling (PHP) errors generated by the application
6 */
7
8/*
9 * PHP errors:
10 * E_ERROR ( integer ) Fatal run-time errors. These indicate errors that can not be recovered from, such as a memory allocation problem. Execution of the script is halted.
11 * E_WARNING ( integer ) Run-time warnings (non-fatal errors). Execution of the script is not halted.
12 * E_PARSE ( integer ) Compile-time parse errors. Parse errors should only be generated by the parser.
13 * E_NOTICE ( integer ) Run-time notices. Indicate that the script encountered something that could indicate an error, but could also happen in the normal course of running a script.
14 * E_CORE_ERROR ( integer ) Fatal errors that occur during PHP's initial startup. This is like an E_ERROR, except it is generated by the core of PHP. since PHP 4
15 * E_CORE_WARNING ( integer ) Warnings (non-fatal errors) that occur during PHP's initial startup. This is like an E_WARNING, except it is generated by the core of PHP. since PHP 4
16 * E_COMPILE_ERROR ( integer ) Fatal compile-time errors. This is like an E_ERROR, except it is generated by the Zend Scripting Engine. since PHP 4
17 * E_COMPILE_WARNING ( integer ) Compile-time warnings (non-fatal errors). This is like an E_WARNING, except it is generated by the Zend Scripting Engine. since PHP 4
18 * E_USER_ERROR ( integer ) User-generated error message. This is like an E_ERROR, except it is generated in PHP code by using the PHP function trigger_error(). since PHP 4
19 * E_USER_WARNING ( integer ) User-generated warning message. This is like an E_WARNING, except it is generated in PHP code by using the PHP function trigger_error(). since PHP 4
20 * E_USER_NOTICE ( integer ) User-generated notice message. This is like an E_NOTICE, except it is generated in PHP code by using the PHP function trigger_error(). since PHP 4
21 * E_STRICT ( integer ) Enable to have PHP suggest changes to your code which will ensure the best interoperability and forward compatibility of your code. since PHP 5
22 * E_RECOVERABLE_ERROR ( integer ) Catchable fatal error. It indicates that a probably dangerous error occured, but did not leave the Engine in an unstable state. If the error is not caught by a user defined handle (see also set_error_handler()), the application aborts as it was an E_ERROR. since PHP 5.2.0
23 * E_DEPRECATED ( integer ) Run-time notices. Enable this to receive warnings about code that will not work in future versions. since PHP 5.3.0
24 * E_USER_DEPRECATED ( integer ) User-generated warning message. This is like an E_DEPRECATED, except it is generated in PHP code by using the PHP function trigger_error(). since PHP 5.3.0
25 * E_ALL ( integer ) All errors and warnings, as supported, except of level E_STRICT in PHP < 6.
26 */
27
28class ErrorHandler {
29 /*
30 * Function: ErrorHandler
31 * Parameters: int $errno, string $errstr, string $errfile, int $errline, array $errcontext
32 * Function: Handling with errors, decides what to do with it
33 */
34 public function ErrorHandler(int $errno, string $errstr, string $errfile, int $errline, array $errcontext) {
35 switch ($errno) {
36 case E_ERROR:
37 echo 'E_ERROR: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
38 // TODO
39 break;
40 case E_WARNING:
41 echo 'E_WARNING: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
42 // TODO
43 break;
44 case E_PARSE:
45 echo 'E_PARSE: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
46 // TODO
47 break;
48 case E_NOTICE:
49 echo 'E_NOTICE: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
50 // TODO
51 break;
52 case E_CORE_ERROR:
53 echo 'E_CORE_ERROR: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
54 // TODO
55 break;
56 case E_CORE_WARNING:
57 echo 'E_CORE_WARNING: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
58 // TODO
59 break;
60 case E_COMPILE_ERROR:
61 echo 'E_COMPILE_ERROR: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
62 // TODO
63 break;
64 case E_COMPILE_WARNING:
65 echo 'E_COMPILE_WARNING: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
66 // TODO
67 break;
68 case E_USER_ERROR:
69 echo 'E_USER_ERROR: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
70 // TODO
71 break;
72 case E_USER_WARNING:
73 echo 'E_USER_WARNING: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
74 // TODO
75 break;
76 case E_USER_NOTICE:
77 echo 'E_USER_NOTICE: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
78 // TODO
79 break;
80 case E_STRICT:
81 echo 'E_STRICT: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
82 // TODO
83 break;
84 case E_RECOVERABLE_ERROR:
85 echo 'E_RECOVERABLE_ERROR: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
86 // TODO
87 break;
88 case E_DEPRECATED:
89 echo 'E_DEPRECATED: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
90 // TODO
91 break;
92 case E_USER_DEPRECATED:
93 echo 'E_USER_DEPRECATED: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
94 // TODO
95 break;
96 default:
97 echo 'E_DEFAULT: ' , $errno , ': ' , $errstr , '<br/>Bestand: ' , $errfile , '<br/>Regel: ' , $errline , '<br/>';
98 // TODO
99 break;
100 }
101
102 /* Don't execute PHP internal error handler */
103 return true;
104 }
105}
106
107set_exception_handler('ErrorHandler::ErrorHandler');
Note: See TracBrowser for help on using the repository browser.