Класс BaseErrorHandler
Базовый обработчик ошибок, предоставляющий общую логику для обработчиков ошибок/исключений CLI и веб-приложений.
Подклассы должны реализовать методы шаблонов для обработки отображения ошибок в своей среде.
Прямые подклассы
Краткое описание свойств
-
$_handledprotectedboolean -
$_optionsprotectedПараметры для использования при обработке ошибок.array
Краткое описание методов
- Отобразить сообщение об ошибке специфичным для среды способом.
- Отобразить исключение специфичным для среды способом.
- _getMessage() protectedГенерирует отформатированное сообщение об ошибке.
- _logError() protectedЗалогировать ошибку.
- _logException() protectedОбработка логирования исключений.
- _requestContext() protectedПолучить контекст запроса для отладки ошибок/исключений.
- _stop() protectedОстановить процесс.
- getMessageForException() protectedСгенерировать сообщение для исключения.
- handleError() publicУстановлен в качестве обработчика ошибок по умолчанию CakePHP.
- handleException() publicОбработать необработанные исключения.
- handleFatalError() publicОтобразить/залогировать критическую ошибку.
- increaseMemoryLimit() public
Увеличивает значение ini PHP "memory_limit" на указанное количество килобайт
- Преобразовать код ошибки в слово ошибки и залогировать местоположение.
- register() publicЗарегистрировать обработчики ошибок и исключений.
- wrapAndHandleException() public
Проверяет тип переданного исключения. Если это экземпляр
Error, то он оборачивает переданный объект в другой объект исключения для обеспечения обратной совместимости.
Подробное описание методов
_displayError()source абстрактный protected
_displayError( array $error , boolean $debug )
Отобразить сообщение об ошибке специфичным для среды способом.
Подклассы должны реализовать этот метод для отображения ошибки так, как это нужно для среды, в которой они работают.
Параметры
- массив
$error - Массив данных об ошибке.
- логический
$debug - Является ли приложение в режиме отладки.
_displayException()source абстрактный protected
_displayException( Exception $exception )
Отобразить исключение специфичным для среды способом.
Подклассы должны реализовать этот метод для отображения необработанного исключения так, как это нужно для среды, в которой они работают.
Параметры
- Исключение
$exception - Необработанное исключение.
_getMessage()source protected
_getMessage( Exception $exception )
Генерирует отформатированное сообщение об ошибке
Параметры
- Исключение
$exception - Экземпляр исключения
Возвращает
строкаОтформатированное сообщение
_logError()source protected
_logError( string $level , array $data )
Залогировать ошибку.
Параметры
- строка
$level - Имя уровня журнала.
- массив
$data - Массив данных об ошибке.
Возвращает
логический_logException()source protected
_logException( Exception $exception )
Обработка логирования исключений
Параметры
- Исключение
$exception - Экземпляр исключения.
Возвращает
логический_requestContext()source protected
_requestContext( Cake\Http\ServerRequest $request )
Получить контекст запроса для отладки ошибок/исключений.
Параметры
-
Cake\Http\ServerRequest$request - Запрос для чтения.
Возвращает
строка_stop()source protected
_stop( integer $code )
Остановить процесс.
Реализовано в подклассах, которым это нужно.
Параметры
- целое число
$code - Код завершения.
getMessageForException()source protected
getMessageForException( Exception $exception , boolean $isPrevious = false )
Сгенерировать сообщение для исключения
Параметры
- Исключение
$exception - Исключение, для которого нужно залогировать сообщение.
- логический
$isPreviousдополнительно false - False для исходного исключения, true для предыдущего
Возвращает
строкаСообщение об ошибке
handleError()source public
handleError( integer $code , string $description , string|null $file = null , integer|null $line = null , array|null $context = null )
Установлен в качестве обработчика ошибок по умолчанию CakePHP.
Настройте или замените этот обработчик ошибок в config/error.php. Эта функция будет использовать Debugger для отображения ошибок, когда debug > 0. И будет логировать ошибки в Log, когда debug == 0.
Вы можете использовать опцию 'errorLevel', чтобы указать какие типы ошибок будут обрабатываться. С помощью опции 'trace' можно включить трассировку стека для ошибок.
Параметры
- целое число
$code - Код ошибки
- строка
$description - Описание ошибки
- строка|null
$fileдополнительно null - Файл, в котором произошла ошибка
- целое число|null
$lineдополнительно null - Строка, которая вызвала ошибку
- массив|null
$contextдополнительно null - Контекст
Возвращает
логическийTrue, если ошибка была обработана
handleException()source public
handleException( Exception $exception )
Обработать необработанные исключения.
Использует метод шаблона, предоставляемый подклассами, для отображения ошибок подходящим для среды способом.
Параметры
- Исключение
$exception - Экземпляр исключения.
Вызывает
ИсключениеКогда класс рендерера не найден
См. также
https://secure.php.net/manual/en/function.set-exception-handler.phphandleFatalError()source public
handleFatalError( integer $code , string $description , string $file , integer $line )
Отобразить/залогировать критическую ошибку.
Параметры
- целое число
$code - Код ошибки
- строка
$description - Описание ошибки
- строка
$file - Файл, в котором произошла ошибка
- целое число
$line - Строка, вызвавшая ошибку
Возвращаемое значение
booleanincreaseMemoryLimit()source public
increaseMemoryLimit( integer $additionalKb )
Увеличивает значение ini настройки PHP "memory_limit" на указанную величину в килобайтах.
Параметры
- целое число
$additionalKb - Число в килобайтах
mapErrorCode()source public static
mapErrorCode( integer $code )
Преобразует код ошибки в слово ошибки и местоположение лога.
Параметры
- целое число
$code - Код ошибки для преобразования
Возвращаемое значение
массивМассив из слова ошибки и местоположения лога.
wrapAndHandleException()source public
wrapAndHandleException( Exception|Error $exception )
Проверяет тип переданного исключения. Если это экземпляр Error, то он оборачивает переданный объект в другой объект Exception для обеспечения обратной совместимости.
Параметры
- Exception|Error
$exception - Исключение для обработки
Подробное описание свойств
© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.7/class-Cake.Error.BaseErrorHandler.html