samsonos /
php_core
| Conditions | 3 |
| Paths | 2 |
| Total Lines | 10 |
| Code Lines | 3 |
| Lines | 0 |
| Ratio | 0 % |
| Tests | 0 |
| CRAP Score | 12 |
| Changes | 2 | ||
| Bugs | 1 | Features | 0 |
| Metric | Value |
|---|---|
| c | 2 |
| b | 1 |
| f | 0 |
| dl | 0 |
| loc | 10 |
| ccs | 0 |
| cts | 3 |
| cp | 0 |
| rs | 9.4285 |
| cc | 3 |
| eloc | 3 |
| nc | 2 |
| nop | 0 |
| crap | 12 |
| 1 | <?php |
||
| 2 | namespace samson\core; |
||
| 3 | |||
| 4 | // TODO: Should separated to external module |
||
| 5 | |||
| 6 | // |
||
| 7 | // Коды ошибок |
||
| 8 | // Новые коды должны попадать в диапазон ( E_SAMSON_FATAL_ERROR - D_SAMSON_DEBUG ) |
||
| 9 | // |
||
| 10 | |||
| 11 | /** Критическая ошибка в системы, после ее срабатывания система прекращает работу */ |
||
| 12 | define( 'E_SAMSON_FATAL_ERROR', 900 ); |
||
| 13 | /** Ошибка при работе с ресурсами системы */ |
||
| 14 | define( 'E_SAMSON_SRC_ERROR', 901 ); |
||
| 15 | /** Ошибка в ядре системы */ |
||
| 16 | define( 'E_SAMSON_CORE_ERROR', 999 ); |
||
| 17 | /** Ошибка в АктивнойЗаписи */ |
||
| 18 | define( 'E_SAMSON_ACTIVERECORD_ERROR', 998 ); |
||
| 19 | /** Ошибка в SQL */ |
||
| 20 | define( 'E_SAMSON_SQL_ERROR', 997 ); |
||
| 21 | /** Ошибка в работе SamsonCMS */ |
||
| 22 | define( 'E_SAMSON_CMS_ERROR', 996 ); |
||
| 23 | /** Ошибка в AUTH */ |
||
| 24 | define( 'E_SAMSON_AUTH_ERROR', 995 ); |
||
| 25 | /** Ошибка в компрессоре системы */ |
||
| 26 | define( 'E_SAMSON_SNAPSHOT_ERROR', 994 ); |
||
| 27 | /** Ошибка в компрессоре системы */ |
||
| 28 | define( 'E_SAMSON_RENDER_ERROR', 993 ); |
||
| 29 | |||
| 30 | // |
||
| 31 | // Коды для отладочных сообщений |
||
| 32 | // Новые коды должны все быть больше D_SAMSON_DEBUG(10000) |
||
| 33 | // |
||
| 34 | |||
| 35 | /** |
||
| 36 | * Отладочное сообщение |
||
| 37 | */ |
||
| 38 | define( 'D_SAMSON_DEBUG', 10000 ); |
||
| 39 | /** |
||
| 40 | * Отладочное сообщение ActiveRecord |
||
| 41 | */ |
||
| 42 | define( 'D_SAMSON_ACTIVERECORD_DEBUG', 10001 ); |
||
| 43 | /** |
||
| 44 | * Отладочное сообщение в CMS |
||
| 45 | */ |
||
| 46 | define( 'D_SAMSON_CMS_DEBUG', 10002 ); |
||
| 47 | /** |
||
| 48 | * Отладочное сообщение в AUTH |
||
| 49 | */ |
||
| 50 | define( 'D_SAMSON_AUTH_DEBUG', 10003 ); |
||
| 51 | |||
| 52 | |||
| 53 | /** |
||
| 54 | * Обработчик ошибок SamsonPHP |
||
| 55 | * |
||
| 56 | * @package SamsonPHP |
||
| 57 | * @author Vitaly Iegorov <[email protected]> |
||
| 58 | * @version 1.6 |
||
| 59 | */ |
||
| 60 | class Error |
||
| 61 | { |
||
|
0 ignored issues
–
show
Coding Style
introduced
by
Loading history...
|
|||
| 62 | /** |
||
|
0 ignored issues
–
show
|
|||
| 63 | * Глобальный флаг вывода отладочных сообщений |
||
|
0 ignored issues
–
show
|
|||
| 64 | * @var boolean |
||
|
0 ignored issues
–
show
|
|||
| 65 | */ |
||
|
0 ignored issues
–
show
|
|||
| 66 | public static $OUTPUT = TRUE; |
||
|
0 ignored issues
–
show
|
|||
| 67 | |||
|
0 ignored issues
–
show
|
|||
| 68 | /** |
||
|
0 ignored issues
–
show
|
|||
| 69 | * Коллекция ошибок и предупреждений для отладки и правильной работы |
||
|
0 ignored issues
–
show
|
|||
| 70 | * приложения |
||
|
0 ignored issues
–
show
|
|||
| 71 | */ |
||
|
0 ignored issues
–
show
|
|||
| 72 | private $errors = array(); |
||
|
0 ignored issues
–
show
|
|||
| 73 | |||
|
0 ignored issues
–
show
|
|||
| 74 | /** |
||
|
0 ignored issues
–
show
|
|||
| 75 | * Путь к файлу с CSS представлением ошибок |
||
|
0 ignored issues
–
show
|
|||
| 76 | * @var string |
||
|
0 ignored issues
–
show
|
|||
| 77 | */ |
||
|
0 ignored issues
–
show
|
|||
| 78 | public static $css = NULL; |
||
|
0 ignored issues
–
show
|
|||
| 79 | |||
|
0 ignored issues
–
show
|
|||
| 80 | /** |
||
|
0 ignored issues
–
show
|
|||
| 81 | * Указатель на внешнюю функцию для обработки завершения работы скрипта |
||
|
0 ignored issues
–
show
|
|||
| 82 | * @var callable |
||
|
0 ignored issues
–
show
|
|||
| 83 | */ |
||
|
0 ignored issues
–
show
|
|||
| 84 | public static $shutdown_handler; |
||
|
0 ignored issues
–
show
|
|||
| 85 | |||
|
0 ignored issues
–
show
|
|||
| 86 | /** |
||
|
0 ignored issues
–
show
|
|||
| 87 | * Конструктор |
||
|
0 ignored issues
–
show
|
|||
| 88 | */ |
||
|
0 ignored issues
–
show
|
|||
| 89 | public function __construct() |
||
|
0 ignored issues
–
show
|
|||
| 90 | { |
||
|
0 ignored issues
–
show
|
|||
| 91 | // Уберем стандартный вывод ошибок PHP |
||
|
0 ignored issues
–
show
|
|||
| 92 | error_reporting( false ); |
||
|
0 ignored issues
–
show
|
|||
| 93 | |||
|
0 ignored issues
–
show
|
|||
| 94 | // Зарегистрируем функцию обработчик исключений |
||
|
0 ignored issues
–
show
|
|||
| 95 | //set_exception_handler( array( $this, 'exception_handler')); |
||
|
0 ignored issues
–
show
|
|||
| 96 | |||
|
0 ignored issues
–
show
|
|||
| 97 | // Обработчик ошибок |
||
|
0 ignored issues
–
show
|
|||
| 98 | set_error_handler( array( $this, 'handler' ) ); |
||
|
0 ignored issues
–
show
|
|||
| 99 | |||
|
0 ignored issues
–
show
|
|||
| 100 | // Зарегистрируем функцию обработчик завершения работы системы |
||
|
0 ignored issues
–
show
|
|||
| 101 | register_shutdown_function( array( $this, 'shutdown' ) ); |
||
|
0 ignored issues
–
show
|
|||
| 102 | |||
|
0 ignored issues
–
show
|
|||
| 103 | // Сформируем "универсально" путь к CSS представлению ошибок |
||
|
0 ignored issues
–
show
|
|||
| 104 | if( file_exists(__SAMSON_PATH__.'css/error.css') ) self::$css = file_get_contents( __SAMSON_PATH__.'css/error.css'); |
||
|
0 ignored issues
–
show
The constant
__SAMSON_PATH__ has been deprecated with message: Define path to SamsonPHP framework
This class constant has been deprecated. The supplier of the file has supplied an explanatory message. The explanatory message should give you some clue as to whether and when the constant will be removed from the class and what other constant to use instead. Loading history...
|
|||
| 105 | } |
||
|
0 ignored issues
–
show
|
|||
| 106 | |||
|
0 ignored issues
–
show
|
|||
| 107 | /** |
||
|
0 ignored issues
–
show
|
|||
| 108 | * Обработчик завершения работы скрипта |
||
|
0 ignored issues
–
show
|
|||
| 109 | */ |
||
|
0 ignored issues
–
show
|
|||
| 110 | public function shutdown() |
||
|
0 ignored issues
–
show
|
|||
| 111 | { |
||
|
0 ignored issues
–
show
|
|||
| 112 | // Если установлен обработчик завершения выполнения скрипта - вызовем его |
||
|
0 ignored issues
–
show
|
|||
| 113 | if( isset( self::$shutdown_handler ) && ( call_user_func( self::$shutdown_handler ) === false )) return null; |
||
|
0 ignored issues
–
show
|
|||
| 114 | |||
| 115 | //echo 'Конец'; |
||
|
0 ignored issues
–
show
|
|||
| 116 | |||
|
0 ignored issues
–
show
|
|||
| 117 | // Выведем все накопленные ошибки |
||
|
0 ignored issues
–
show
|
|||
| 118 | $this->output(); |
||
|
0 ignored issues
–
show
|
|||
| 119 | } |
||
|
0 ignored issues
–
show
|
|||
| 120 | |||
|
0 ignored issues
–
show
|
|||
| 121 | /** |
||
|
0 ignored issues
–
show
|
|||
| 122 | * Обработчик завершения работы скрипта |
||
|
0 ignored issues
–
show
|
|||
| 123 | */ |
||
|
0 ignored issues
–
show
|
|||
| 124 | public function output() |
||
|
0 ignored issues
–
show
|
|||
| 125 | { |
||
|
0 ignored issues
–
show
|
|||
| 126 | // Получим последнюю ошибку системы |
||
|
0 ignored issues
–
show
|
|||
| 127 | $lerror = error_get_last(); |
||
|
0 ignored issues
–
show
|
|||
| 128 | |||
| 129 | // Коды ошибок которые останавливают скрипт |
||
|
0 ignored issues
–
show
|
|||
| 130 | $fatal_codes = array( 1, 4, 16, 64 ); |
||
|
0 ignored issues
–
show
|
|||
| 131 | |||
|
0 ignored issues
–
show
|
|||
| 132 | // Если была фатальная ошибка преобразуем её для вывода |
||
|
0 ignored issues
–
show
|
|||
| 133 | if( isset($lerror) && in_array( $lerror['type'], $fatal_codes ) ) |
||
|
0 ignored issues
–
show
|
|||
| 134 | { |
||
|
0 ignored issues
–
show
|
|||
| 135 | // Выполним обработчик ошибки и преобразование её в наше представление |
||
|
0 ignored issues
–
show
|
|||
| 136 | $this->handler( $lerror['type'], $lerror['message'], $lerror['file'], $lerror['line'], null, debug_backtrace(FALSE) ); |
||
|
0 ignored issues
–
show
|
|||
| 137 | } |
||
|
0 ignored issues
–
show
|
|||
| 138 | |||
|
0 ignored issues
–
show
|
|||
| 139 | // Соберем представление ошибок в HTML |
||
|
0 ignored issues
–
show
|
|||
| 140 | $html = ''; |
||
|
0 ignored issues
–
show
|
|||
| 141 | |||
|
0 ignored issues
–
show
|
|||
| 142 | // Выведем файл CSS стилей, если он есть! и были ошибки |
||
|
0 ignored issues
–
show
|
|||
| 143 | if( sizeof($this->errors) && isset( self::$css{0})) $html .= '<style>'.self::$css.'</style>'; |
||
|
0 ignored issues
–
show
|
|||
| 144 | |||
|
0 ignored issues
–
show
|
|||
| 145 | // Индекс |
||
|
0 ignored issues
–
show
|
|||
| 146 | $index = 0; |
||
|
0 ignored issues
–
show
|
|||
| 147 | |||
|
0 ignored issues
–
show
|
|||
| 148 | // Переберем ошибки которые были при выполнения скрипта |
||
|
0 ignored issues
–
show
|
|||
| 149 | foreach ($this->errors as & $error) |
||
|
0 ignored issues
–
show
|
|||
| 150 | { |
||
|
0 ignored issues
–
show
|
|||
| 151 | if( $error['class'] == '_core_debug') $html .= '<div class="_core_error _core_debug">'.$error['message'].'</div>'; |
||
|
0 ignored issues
–
show
|
|||
| 152 | else |
||
|
0 ignored issues
–
show
|
|||
| 153 | { |
||
|
0 ignored issues
–
show
|
|||
| 154 | $id = rand(0, 999999999).rand(0,9999999999); |
||
|
0 ignored issues
–
show
|
|||
| 155 | // Выведем ошибку |
||
|
0 ignored issues
–
show
|
|||
| 156 | $html .= '<div class="_core_error '.$error['class'].'"> |
||
|
0 ignored issues
–
show
|
|||
| 157 | <input type="checkbox" id="eb_'.$id.'" class="_core_error_check_box"> |
||
| 158 | <label for="eb_'.$id.'" class="_core_error_label"> |
||
| 159 | <span class="_core_error_type">'.$error['type'].'</span> |
||
| 160 | <span class="_core_error_file">'.$error['file'].'</span> |
||
| 161 | <span class="_core_error_line">, стр. '.$error['line'].'</span> |
||
| 162 | '.$error['message'].'</label> |
||
| 163 | </div>'; |
||
| 164 | } |
||
|
0 ignored issues
–
show
|
|||
| 165 | |||
|
0 ignored issues
–
show
|
|||
| 166 | // Удалим ошибку которую мы вывели что бы она не вылезла внизу страницы повторно |
||
|
0 ignored issues
–
show
|
|||
| 167 | unset($this->errors[ $index++ ]); |
||
|
0 ignored issues
–
show
|
|||
| 168 | } |
||
|
0 ignored issues
–
show
|
|||
| 169 | |||
|
0 ignored issues
–
show
|
|||
| 170 | // Выведем блок для завершения вывода |
||
|
0 ignored issues
–
show
|
|||
| 171 | if( $index ) $html .= '<div style="clear:both;"></div>'; |
||
|
0 ignored issues
–
show
|
|||
| 172 | |||
|
0 ignored issues
–
show
|
|||
| 173 | /* |
||
|
0 ignored issues
–
show
|
|||
| 174 | // Если єто отпечаток сайта - отправим ошибку на почту |
||
| 175 | if( isset($GLOBALS["__CORE_SNAPSHOT"]) && $index ) |
||
| 176 | try { mail_send( '[email protected]','[email protected]', $html, 'Ошибка PHP:'.url()->build() ); } |
||
| 177 | catch (Exception $e) {} |
||
| 178 | */ |
||
| 179 | |||
|
0 ignored issues
–
show
|
|||
| 180 | // Если вывод ошибок включен |
||
|
0 ignored issues
–
show
|
|||
| 181 | if( self::$OUTPUT ) echo $html; |
||
|
0 ignored issues
–
show
|
|||
| 182 | } |
||
|
0 ignored issues
–
show
|
|||
| 183 | |||
| 184 | /** |
||
|
0 ignored issues
–
show
|
|||
| 185 | * Обработчик ошибок PHP |
||
|
0 ignored issues
–
show
|
|||
| 186 | * Сигнатура метода совпадает с требованиями PHP |
||
|
0 ignored issues
–
show
|
|||
| 187 | * |
||
|
0 ignored issues
–
show
|
|||
| 188 | * @param integer $errno Код ошибки |
||
|
0 ignored issues
–
show
|
|||
| 189 | * @param string $errfile Файл в котором происходит ошибка |
||
|
0 ignored issues
–
show
|
|||
| 190 | * @param string $errline Строка в которой была ошибка |
||
|
0 ignored issues
–
show
|
|||
| 191 | * @param string $errcontext Контекст в котором произошла ошибка |
||
|
0 ignored issues
–
show
|
|||
| 192 | */ |
||
|
0 ignored issues
–
show
|
|||
| 193 | public function handler( $errno , $error_msg, $errfile = NULL, $errline = NULL, $errcontext = NULL, $backtrace = NULL ) |
||
|
0 ignored issues
–
show
|
|||
| 194 | { |
||
|
0 ignored issues
–
show
|
|||
| 195 | // Если вывод ошибок включен |
||
|
0 ignored issues
–
show
|
|||
| 196 | if( ! self::$OUTPUT ) return NULL; |
||
|
0 ignored issues
–
show
|
|||
| 197 | |||
|
0 ignored issues
–
show
|
|||
| 198 | // Если не передан стек вызовов получим текущий |
||
|
0 ignored issues
–
show
|
|||
| 199 | if( ! isset( $backtrace ) ) $backtrace = debug_backtrace( FALSE ); |
||
|
0 ignored issues
–
show
|
|||
| 200 | |||
|
0 ignored issues
–
show
|
|||
| 201 | // Если сообщение установлено |
||
|
0 ignored issues
–
show
|
|||
| 202 | if( !isset($error_msg) || ($error_msg == 'Undefined') || (!isset($error_msg{0})) ) return FALSE; |
||
|
0 ignored issues
–
show
|
|||
| 203 | |||
|
0 ignored issues
–
show
|
|||
| 204 | // Указатель на "правильный" уровень стека вызовов |
||
|
0 ignored issues
–
show
|
|||
| 205 | if( isset($backtrace[ 1 ]) ) $callee = & $backtrace[ 1 ]; |
||
|
0 ignored issues
–
show
|
|||
| 206 | |||
|
0 ignored issues
–
show
|
|||
| 207 | // Если ошибка вызывается из функции то укажем ее |
||
|
0 ignored issues
–
show
|
|||
| 208 | if( isset( $callee['function'] ) ) $error_msg = '<u>' . $callee['function'] . '()</u> ' . $error_msg; |
||
|
0 ignored issues
–
show
|
|||
| 209 | |||
|
0 ignored issues
–
show
|
|||
| 210 | // Если ошибка вызывается из класса то укажем его |
||
|
0 ignored issues
–
show
|
|||
| 211 | if( isset( $callee['class'] ) ) $error_msg = '<u>' . $callee['class'] . '</u>::' . $error_msg; |
||
|
0 ignored issues
–
show
|
|||
| 212 | |||
|
0 ignored issues
–
show
|
|||
| 213 | // Если не передан файл где была ошибка |
||
|
0 ignored issues
–
show
|
|||
| 214 | if( ! isset( $errfile ) ) $errfile = isset($callee['file']) ? $callee['file'] : ''; |
||
|
0 ignored issues
–
show
|
|||
| 215 | |||
|
0 ignored issues
–
show
|
|||
| 216 | // Если не передана линия где была ошибка |
||
|
0 ignored issues
–
show
|
|||
| 217 | if( ! isset( $errline ) ) $errline = isset($callee['line']) ? $callee['line'] : ''; |
||
|
0 ignored issues
–
show
|
|||
| 218 | |||
|
0 ignored issues
–
show
|
|||
| 219 | // Сформируем стек вызовов для разбора ошибки |
||
|
0 ignored issues
–
show
|
|||
| 220 | $error_msg = debug_backtrace_html( $error_msg, $backtrace ); |
||
|
0 ignored issues
–
show
|
|||
| 221 | |||
|
0 ignored issues
–
show
|
|||
| 222 | // Описание типа |
||
|
0 ignored issues
–
show
|
|||
| 223 | $error_type = ''; |
||
|
0 ignored issues
–
show
$error_type is not used, you could remove the assignment.
This check looks for variable assignements that are either overwritten by other assignments or where the variable is not used subsequently. $myVar = 'Value';
$higher = false;
if (rand(1, 6) > 3) {
$higher = true;
} else {
$higher = false;
}
Both the Loading history...
|
|||
| 224 | |||
|
0 ignored issues
–
show
|
|||
| 225 | // CSS класс ошибки |
||
|
0 ignored issues
–
show
|
|||
| 226 | $error_css = ''; |
||
|
0 ignored issues
–
show
|
|||
| 227 | |||
|
0 ignored issues
–
show
|
|||
| 228 | // Определим описание типа ошибки |
||
|
0 ignored issues
–
show
|
|||
| 229 | switch ( $errno ) |
||
|
0 ignored issues
–
show
|
|||
| 230 | { |
||
|
0 ignored issues
–
show
|
|||
| 231 | case E_ERROR: $error_type = 'Фатальная ошибка'; $error_css='_core_fatal_error'; break; |
||
|
0 ignored issues
–
show
|
|||
| 232 | case E_CORE_ERROR: $error_type = 'Ошибка ядра PHP'; $error_css='_core_fatal_error'; break; |
||
|
0 ignored issues
–
show
|
|||
| 233 | case E_SAMSON_FATAL_ERROR: $error_type = 'Фатальная ошибка SamsonPHP'; $error_css='_core_fatal_error'; break; |
||
|
0 ignored issues
–
show
|
|||
| 234 | case E_SAMSON_SNAPSHOT_ERROR: $error_type = 'Ошибка создания отпечатка SamsonPHP'; break; |
||
|
0 ignored issues
–
show
|
|||
| 235 | case E_SAMSON_RENDER_ERROR: $error_type = 'SamsonPHP rendering error'; break; |
||
|
0 ignored issues
–
show
|
|||
| 236 | case E_PARSE: $error_type = 'Ошибка парсинга'; $error_css='_core_fatal_error'; break; |
||
|
0 ignored issues
–
show
|
|||
| 237 | case E_COMPILE_ERROR: $error_type = 'Ошибка компиляции'; $error_css='_core_fatal_error'; break; |
||
|
0 ignored issues
–
show
|
|||
| 238 | case E_USER_ERROR: $error_type = 'Пользовательская ошибка'; break; |
||
|
0 ignored issues
–
show
|
|||
| 239 | case E_WARNING: $error_type = 'Предупреждение'; break; |
||
|
0 ignored issues
–
show
|
|||
| 240 | case E_CORE_WARNING: $error_type = 'Предупреждение ядра PHP'; break; |
||
|
0 ignored issues
–
show
|
|||
| 241 | case E_COMPILE_WARNING: $error_type = 'Предупреждение компиляции';break; |
||
|
0 ignored issues
–
show
|
|||
| 242 | case E_USER_WARNING: $error_type = 'Пользовательское предупреждение'; break; |
||
|
0 ignored issues
–
show
|
|||
| 243 | case E_NOTICE: $error_type = 'Замечание'; break; |
||
|
0 ignored issues
–
show
|
|||
| 244 | case E_USER_NOTICE: $error_type = 'Пользовательское замечание'; break; |
||
|
0 ignored issues
–
show
|
|||
| 245 | case E_STRICT: $error_type = 'Строгая ошибка'; break; |
||
|
0 ignored issues
–
show
|
|||
| 246 | case E_RECOVERABLE_ERROR: $error_type = 'Востанавливаемая ошибка'; break; |
||
|
0 ignored issues
–
show
|
|||
| 247 | case E_DEPRECATED: $error_type = 'Использование устаревших данных'; break; |
||
|
0 ignored issues
–
show
|
|||
| 248 | case E_USER_DEPRECATED: $error_type = 'Старая функция'; break; |
||
|
0 ignored issues
–
show
|
|||
| 249 | case E_SAMSON_CORE_ERROR: $error_type = 'Ошибка SamsonPHP'; break; |
||
|
0 ignored issues
–
show
|
|||
| 250 | case E_SAMSON_ACTIVERECORD_ERROR: $error_type = 'Ошибка ActiveRecord'; break; |
||
|
0 ignored issues
–
show
|
|||
| 251 | case E_SAMSON_CMS_ERROR: $error_type = 'Ошибка SamsonCMS'; break; |
||
|
0 ignored issues
–
show
|
|||
| 252 | case D_SAMSON_DEBUG: $error_type = 'Отладка SamsonPHP'; $error_css='_core_debug'; break; |
||
|
0 ignored issues
–
show
|
|||
| 253 | case D_SAMSON_CMS_DEBUG: $error_type = 'Отладка SamsonCMS'; $error_css='_core_debug'; break; |
||
|
0 ignored issues
–
show
|
|||
| 254 | case D_SAMSON_ACTIVERECORD_DEBUG: $error_type = 'Отладка ActiveRecord'; $error_css='_core_debug'; break; |
||
|
0 ignored issues
–
show
|
|||
| 255 | default: $error_type = 'Неизвестная ошибка'; |
||
|
0 ignored issues
–
show
|
|||
| 256 | } |
||
|
0 ignored issues
–
show
|
|||
| 257 | |||
|
0 ignored issues
–
show
|
|||
| 258 | // Сформируем ошибку в виде массива |
||
|
0 ignored issues
–
show
|
|||
| 259 | $this->errors[] = $this->toError( $errno, $error_type.':', $error_msg, $errfile, $errline, $error_css ); |
||
|
0 ignored issues
–
show
|
|||
| 260 | |||
|
0 ignored issues
–
show
|
|||
| 261 | // Если это фатальная ошибка - остановим выполнение скрипта |
||
|
0 ignored issues
–
show
|
|||
| 262 | if( $errno == E_SAMSON_FATAL_ERROR ) die(); |
||
|
0 ignored issues
–
show
|
|||
| 263 | } |
||
|
0 ignored issues
–
show
|
|||
| 264 | |||
| 265 | /** |
||
|
0 ignored issues
–
show
|
|||
| 266 | * Преобразовать параметры ошибки в массив-ошибку |
||
|
0 ignored issues
–
show
|
|||
| 267 | * |
||
|
0 ignored issues
–
show
|
|||
| 268 | * @param integer $errno Код ошибки |
||
|
0 ignored issues
–
show
|
|||
| 269 | * @param string $desc Описание ошибки |
||
|
0 ignored issues
–
show
|
|||
| 270 | * @param string $errfile Файл в котором происходит ошибка |
||
|
0 ignored issues
–
show
|
|||
| 271 | * @param string $errline Строка в которой была ошибка |
||
|
0 ignored issues
–
show
|
|||
| 272 | * @param string $error_msg |
||
|
0 ignored issues
–
show
|
|||
| 273 | * @param string $class |
||
|
0 ignored issues
–
show
|
|||
| 274 | * @return array Массив ошибка |
||
|
0 ignored issues
–
show
|
|||
| 275 | */ |
||
|
0 ignored issues
–
show
|
|||
| 276 | private function toError( $errno , $desc, $error_msg, $errfile = NULL, $errline = NULL, $class = NULL ) |
||
|
0 ignored issues
–
show
|
|||
| 277 | { |
||
|
0 ignored issues
–
show
|
|||
| 278 | return array( |
||
|
0 ignored issues
–
show
|
|||
| 279 | 'code' => $errno, |
||
|
0 ignored issues
–
show
|
|||
| 280 | 'type' => $desc, |
||
|
0 ignored issues
–
show
|
|||
| 281 | 'file' => $errfile, |
||
|
0 ignored issues
–
show
|
|||
| 282 | 'line' => $errline, |
||
|
0 ignored issues
–
show
|
|||
| 283 | 'message' => $error_msg, |
||
|
0 ignored issues
–
show
|
|||
| 284 | 'class' => $class |
||
|
0 ignored issues
–
show
|
|||
| 285 | ); |
||
|
0 ignored issues
–
show
|
|||
| 286 | } |
||
|
0 ignored issues
–
show
|
|||
| 287 | } |
||
| 288 | |||
| 289 |