Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function myErrorHandler($errno, $errstr, $errfile, $errline)
- {
- if (!(error_reporting() & $errno)) {
- // Этот код ошибки не включен в error_reporting
- return;
- }
- $dtime = $today = date("Y-m-d H:i:s");
- $filename = __DIR__.'/errlog_BBssdfsdfsfd.txt'; // Путь к логу в корне сайта
- switch ($errno) {
- case E_USER_ERROR:
- // errno номер, errstr описание errline строка errfile файл
- $ERRlog_BB = "$dtime [$errno] $errstr line: $errline file: $errfile\n";
- if (is_writable($filename)) {
- if (!$handle = fopen($filename, 'a')) { exit; }
- if (fwrite($handle, $ERRlog_BB) === FALSE) { exit; }
- fclose($handle);
- }
- exit(1); // Надо ли завершать работу скрипта
- break;
- case E_USER_WARNING:
- $ERRlog_BB = "$dtime [$errno] $errstr line: $errline file: $errfile\n";
- if (is_writable($filename)) {
- if (!$handle = fopen($filename, 'a')) { exit; }
- if (fwrite($handle, $ERRlog_BB) === FALSE) { exit; }
- fclose($handle);
- }
- break;
- case E_USER_NOTICE:
- $ERRlog_BB = "$dtime [$errno] $errstr line: $errline file: $errfile\n";
- if (is_writable($filename)) {
- if (!$handle = fopen($filename, 'a')) { exit; }
- if (fwrite($handle, $ERRlog_BB) === FALSE) { exit; }
- fclose($handle);
- }
- break;
- default:
- $ERRlog_BB = "$dtime [$errno] $errstr line: $errline file: $errfile\n";
- if (is_writable($filename)) {
- if (!$handle = fopen($filename, 'a')) { exit; }
- if (fwrite($handle, $ERRlog_BB) === FALSE) { exit; }
- fclose($handle);
- }
- break;
- }
- /* Не запускаем внутренний обработчик ошибок PHP */
- return true;
- }
- // переключаемся на пользовательский обработчик
- $old_error_handler = set_error_handler("myErrorHandler");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement