Класс ConsoleErrorHandler
Обработчик ошибок для консоли Cake. Осуществляет простое отображение произошедшей исключительной ситуации и стека вызовов ошибки.
Краткое описание свойств
- $_config protected
array<string, mixed>Конфигурация выполнения
- $_configInitialized protected
boolУстановлено ли свойство config значениями по умолчанию
- $_defaultConfig protected
array<string, mixed>Параметры для обработки ошибок.
- $_handled protected
bool - $_stderr protected
Cake\Console\ConsoleOutputПоток стандартных ошибок.
- $logger protected
Cake\Error\ErrorLoggerInterface|nullЭкземпляр записывателя исключений.
Краткое описание методов
-
__construct() public
Конструктор
-
_configDelete() protected
Удаляет один ключ конфигурации.
-
_configRead() protected
Читает ключ конфигурации.
-
_configWrite() protected
Записывает ключ конфигурации.
-
_displayError() protected
Выводит ошибку в stderr.
-
_displayException() protected
Выводит исключение в stderr.
-
_logError() protected
Записывает ошибку в журнал.
-
_stop() protected
Останавливает выполнение и устанавливает код выхода для процесса.
-
configShallow() public
Объединяет предоставленную конфигурацию с существующей конфигурацией. В отличие от
config(), который выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение. -
getConfig() public
Возвращает конфигурацию.
-
getConfigOrFail() public
Возвращает конфигурацию для данного ключа.
-
getLogger() public
Получить записыватель исключений.
-
handleError() public
Устанавливается в качестве обработчика ошибок по умолчанию CakePHP.
-
handleException() public
Обрабатывает ошибки в консольной среде. Записывает ошибки в stderr и регистрирует сообщения, если Configure::read('debug') равно false.
-
handleFatalError() public
Отображает/Записывает критическую ошибку в журнал.
-
increaseMemoryLimit() public
Увеличивает настройку PHP "memory_limit" ini на указанную величину в килобайтах.
-
logException() public
Записывает ошибку для исключения, если применимо.
-
mapErrorCode() public static
Преобразовать код ошибки в сообщение об ошибке и записать расположение.
-
register() public
Регистрирует обработчики ошибок и исключений.
-
setConfig() public
Устанавливает конфигурацию.
-
wrapAndHandleException() public deprecated
Проверяет тип переданного исключения. Если это экземпляр
Error, то он оборачивает переданный объект в другой объект исключения для обеспечения обратной совместимости.
Подробное описание методов
__construct() public
__construct(array<string, mixed> $config = [])
Конструктор
Параметры
-
array<string, mixed>$config необязательный Параметры конфигурации для обработчика ошибок.
_configDelete() защищенный
_configDelete(string $key): void
Удаляет один ключ конфигурации.
Параметры
-
string$key Ключ для удаления.
Возвращает
voidИсключения
Cake\Core\Exception\CakeExceptionесли пытаетесь перезаписать существующую конфигурацию
_configRead() защищенный
_configRead(string|null $key): mixed
Считывает ключ конфигурации.
Параметры
-
string|null$key Ключ для чтения.
Возвращает
mixed_configWrite() защищенный
_configWrite(array<string, mixed>|string $key, mixed $value, string|bool $merge = false): void
Записывает ключ конфигурации.
Параметры
-
array<string, mixed>|string$key Ключ для записи.
-
mixed$value Значение для записи.
-
string|bool$merge необязательный Истина для рекурсивного слияния, 'shallow' для простого слияния, ложь для перезаписи, по умолчанию ложь.
Возвращает
voidИсключения
Cake\Core\Exception\CakeExceptionесли пытаетесь перезаписать существующую конфигурацию
_displayError() защищенный
_displayError(array $error, bool $debug): void
Выводит ошибку в stderr.
Шаблонный метод BaseErrorHandler.
Параметры
-
array$error Массив данных об ошибке.
-
bool$debug Является ли приложение в режиме отладки.
Возвращает
void_displayException() защищенный
_displayException(Throwable $exception): void
Выводит исключение в stderr.
Подклассы должны реализовать этот метод для отображения неперехваченного исключения в соответствии с требованиями среды выполнения.
Параметры
-
Throwable$exception Исключение для обработки
Возвращает
void_logError() защищенный
_logError(string|int $level, array $data): bool
Записывает ошибку в журнал.
Параметры
-
string|int$level Имя уровня журнала.
-
array$data Массив данных об ошибке.
Возвращает
bool_stop() защищенный
_stop(int $code): void
Останавливает выполнение и устанавливает код завершения для процесса.
Реализовано в подклассах, которым это необходимо.
Параметры
-
int$code Код завершения.
Возвращает
voidconfigShallow() public
configShallow(array<string, mixed>|string $key, mixed|null $value = null): $this
Объединяет предоставленную конфигурацию с существующей. В отличие от config(), которая выполняет рекурсивное объединение для вложенных ключей, этот метод выполняет простое объединение.
Установка конкретного значения:
$this->configShallow('key', $value); Установка вложенного значения:
$this->configShallow('some.nested.key', $value); Обновление нескольких параметров конфигурации одновременно:
$this->configShallow(['one' => 'value', 'another' => 'value']);
Параметры
-
array<string, mixed>|string$key Ключ для установки или полный массив конфигураций.
-
mixed|null$value необязательный Значение для установки.
Возвращает
$thisgetConfig() public
getConfig(string|null $key = null, mixed $default = null): mixed
Возвращает конфигурацию.
Использование
Чтение всей конфигурации:
$this->getConfig();
Чтение конкретного значения:
$this->getConfig('key'); Чтение вложенного значения:
$this->getConfig('some.nested.key'); Чтение со значением по умолчанию:
$this->getConfig('some-key', 'default-value'); Параметры
-
string|null$key необязательный Ключ для получения или null для всей конфигурации.
-
mixed$default необязательный Значение возврата, когда ключ не существует.
Возвращает
mixedgetConfigOrFail() public
getConfigOrFail(string $key): mixed
Возвращает конфигурацию для определенного ключа.
Значение конфигурации для этого ключа должно существовать, оно никогда не может быть null.
Параметры
-
string$key Ключ для получения.
Возвращает
mixedИсключения
InvalidArgumentExceptiongetLogger() public
getLogger(): Cake\Error\ErrorLoggerInterface
Получить обработчик логов исключений.
Возвращает
Cake\Error\ErrorLoggerInterfacehandleError() public
handleError(int $code, string $description, string|null $file = null, int|null $line = null, array<string, mixed>|null $context = null): bool
Установлен как обработчик ошибок по умолчанию CakePHP.
Используйте config/error.php для настройки или замены этого обработчика ошибок. Эта функция будет использовать Debugger для отображения ошибок, когда режим отладки включен. И будет записывать ошибки в Log, когда режим отладки выключен.
Вы можете использовать опцию 'errorLevel' для установки типа ошибок, которые будут обрабатываться. Стек-трейсы для ошибок могут быть включены с помощью опции 'trace'.
Параметры
-
int$code Код ошибки
-
string$description Описание ошибки
-
string|null$file необязательный Файл, в котором произошла ошибка
-
int|null$line необязательный Строка, которая вызвала ошибку
-
array<string, mixed>|null$context необязательный Контекст
Возвращает
boolhandleException() public
handleException(Throwable $exception): void
Обрабатывает ошибки в консольной среде. Записывает ошибки в stderr и записывает сообщения в журнал, если Configure::read('debug') имеет значение false.
Использует шаблонный метод, предоставленный подклассами, для отображения ошибок в среде подходящим способом.
Параметры
-
Throwable$exception Экземпляр исключения.
Возвращает
voidИсключения
ExceptionПри отсутствии класса рендерера
См. также
handleFatalError() public
handleFatalError(int $code, string $description, string $file, int $line): bool
Отображает/записывает критическую ошибку в журнал.
Параметры
-
int$code Код ошибки
-
string$description Описание ошибки
-
string$file Файл, в котором произошла ошибка
-
int$line Строка, которая вызвала ошибку
Возвращает
boolincreaseMemoryLimit() public
increaseMemoryLimit(int $additionalKb): void
Увеличивает значение ini PHP "memory_limit" на указанную величину в килобайтах.
Параметры
-
int$additionalKb Количество в килобайтах
Возвращает
voidlogException() public
logException(Throwable $exception, Psr\Http\Message\ServerRequestInterface|null $request = null): bool
Записывает ошибку исключения, если применимо.
Параметры
-
Throwable$exception Исключение для записи сообщения об ошибке.
-
Psr\Http\Message\ServerRequestInterface|null$request необязательный Текущий запрос.
Возвращает
boolmapErrorCode() public static
mapErrorCode(int $code): array
Преобразовать код ошибки в сообщение об ошибке и записать местоположение.
Параметры
-
int$code Код ошибки для преобразования
Возвращаемое значение
arrayregister() public
register(): void
Регистрирует обработчики ошибок и исключений.
Возвращаемое значение
voidsetConfig() public
setConfig(array<string, mixed>|string $key, mixed|null $value = null, bool $merge = true): $this
Устанавливает конфигурацию.
Использование
Установка определенного значения:
$this->setConfig('key', $value); Установка вложенного значения:
$this->setConfig('some.nested.key', $value); Обновление нескольких параметров конфигурации одновременно:
$this->setConfig(['one' => 'value', 'another' => 'value']);
Параметры
-
array<string, mixed>|string$key Ключ для установки или массив конфигураций.
-
mixed|null$value optional Значение для установки.
-
bool$merge optional Флаг для рекурсивного объединения или перезаписи существующей конфигурации, по умолчанию true.
Возвращаемое значение
$thisИсключения
Cake\Core\Exception\CakeExceptionПри попытке установить недопустимый ключ.
wrapAndHandleException() public
wrapAndHandleException(Throwable $exception): void
Проверяет тип переданного исключения. Если это экземпляр Error , то оборачивает переданный объект в новый объект исключения для обеспечения обратной совместимости.
Параметры
-
Throwable$exception Исключение для обработки
Возвращаемое значение
voidПодробное описание свойств
$_config protected
Конфигурация во время выполнения
Тип
array<string, mixed>$_configInitialized protected
Флаг, указывающий, была ли конфигурация уже настроена по умолчанию
Тип
bool$_defaultConfig protected
Параметры для обработки ошибок.
Тип
array<string, mixed>$_handled protected
Тип
bool$_stderr protected
Поток стандартных ошибок.
Тип
Cake\Console\ConsoleOutput$logger protected
Экземпляр логгера исключений.
Тип
Cake\Error\ErrorLoggerInterface|null
© 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/4.4/class-Cake.Error.ConsoleErrorHandler.html