Обработчик исключений
класс Handler реализует ExceptionHandler (Просмотреть исходный код)
Трейты
| ReflectsClosures |
Свойства
| protected Контейнер | $container | Реализация контейнера. | |
| protected Throwable>> | $dontReport | Список типов исключений, которые не должны быть обработаны. | |
| protected ReportableHandler[] | $reportCallbacks | Обратные вызовы, которые должны быть использованы во время обработки. | |
| protected | $levels | Карта исключений с соответствующими пользовательскими уровнями регистрации. | |
| protected array | $throttleCallbacks | Обратные вызовы, которые должны использоваться для ограничения количества обращений к сообщению об исключении. | |
| protected array | $contextCallbacks | Обратные вызовы, используемые для построения контекстных данных исключения. | |
| protected Closure[] | $renderCallbacks | Обратные вызовы, которые должны использоваться во время отображения. | |
| protected callable|null | $shouldRenderJsonWhenCallback | Обратный вызов, определяющий, следует ли отображать ответ об исключении в формате JSON. | |
| protected callable|null | $finalizeResponseCallback | Обратный вызов, подготавливающий ответы, которые будут возвращены браузеру. | |
| protected Closure> | $exceptionMap | Зарегистрированные сопоставления исключений. | |
| protected bool | $hashThrottleKeys | Указывает, что ключи, ограниченные по количеству обращений, должны быть хешированы. | |
| protected Throwable>> | $internalDontReport | Список внутренних типов исключений, которые не должны быть обработаны. | |
| protected array<int,string> | $dontFlash | Список входных данных, которые никогда не отображаются для исключений проверки. | |
| protected bool | $withoutDuplicates | Указывает, что экземпляр исключения должен быть обработан только один раз. | |
| protected WeakMap | $reportedExceptionMap | Карта уже обработанных исключений. |
Методы
| string | firstClosureParameterType(Closure $closure)
Получить имя класса первого параметра данного замыкания. | из ReflectsClosures |
| array | firstClosureParameterTypes(Closure $closure)
Получить имена классов первого параметра данного замыкания, включая типы объединений. | из ReflectsClosures |
| array | closureParameterTypes(Closure $closure)
Получить имена/типы параметров данного замыкания. | из ReflectsClosures |
| void | __construct(Container $container)
Создать новый экземпляр обработчика исключений. | |
| void | register()
Зарегистрировать обработчики исключений для приложения. | |
| ReportableHandler | reportable(callable $reportUsing)
Зарегистрировать обработчик отчётов. | |
| $this | renderable(callable $renderUsing)
Зарегистрировать обработчик рендеринга. | |
| $this | map(Closure|string $from, Closure|string|null $to = null)
Зарегистрировать новое отображение исключений. | |
| $this | dontReport(array|string $exceptions)
Указать, что данный тип исключения не должен быть обработан. | |
| $this | ignore(array|string $exceptions)
Указать, что данный тип исключения не должен быть обработан. | |
| $this | dontFlash(array|string $attributes)
Указать, что данные атрибуты никогда не должны передаваться в сессию при ошибках валидации. | |
| $this | level(Throwable> $type, $level)
Установить уровень логирования для данного типа исключения. | |
| void | report(Throwable $e)
Обработать или записать в лог исключение. | |
| void | reportThrowable(Throwable $e)
Обрабатывает ошибку на основе метода report в исключении или записывает её в логгер. | |
| bool | shouldReport(Throwable $e)
Определить, следует ли обрабатывать исключение. | |
| bool | shouldntReport(Throwable $e)
Определить, находится ли исключение в списке исключений, которые не должны быть обработаны. | |
| Lottery|Limit|null | throttle(Throwable $e)
Ограничить данное исключение. | |
| $this | throttleUsing(callable $throttleUsing)
Указать обратный вызов, который должен использоваться для ограничения обработанных исключений. | |
| $this | stopIgnoring(array|string $exceptions)
Удалить указанный класс исключения из списка исключений, которые должны быть проигнорированы. | |
| array | buildExceptionContext(Throwable $e)
Создать массив контекста для логирования данного исключения. | |
| array | exceptionContext(Throwable $e)
Получить переменные контекста исключения по умолчанию для логирования. | |
| array | context()
Получить переменные контекста по умолчанию для логирования. | |
| $this | buildContextUsing(Closure $contextCallback)
Зарегистрировать замыкание, которое должно использоваться для создания данных контекста исключения. | |
| Response | render(Request $request, Throwable $e)
Отобразить исключение в ответ HTTP. | |
| Response | finalizeRenderedResponse(Request $request, Response $response, Throwable $e)
Подготовить окончательный, отрисованный ответ для возврата браузеру. | |
| $this | respondUsing(callable $callback)
Подготовить окончательный, отрисованный ответ для исключения с помощью данного обратного вызова. | |
| Throwable | prepareException(Throwable $e)
Подготовить исключение для рендеринга. | |
| Throwable | mapException(Throwable $e)
Преобразовать исключение с помощью зарегистрированного преобразователя, если это возможно. | |
| mixed | renderViaCallbacks(Request $request, Throwable $e)
Попытаться отобразить ответ из запроса и исключения с помощью обратных вызовов рендеринга. | |
| Response|JsonResponse|RedirectResponse | renderExceptionResponse(Request $request, Throwable $e)
Отобразить ответ по умолчанию для исключения, если таковой имеется. | |
| Response|JsonResponse|RedirectResponse | unauthenticated(Request $request, AuthenticationException $exception)
Преобразовать исключение аутентификации в ответ. | |
| Response | convertValidationExceptionToResponse(ValidationException $e, Request $request)
Создать объект ответа из данного исключения валидации. |
| Ответ|ОтветJSON|ПереадресацияОтвет | invalid(Запрос $request, ИсключениеВалидации $exception)
Преобразовать исключение валидации в ответ. | |
| ОтветJSON | invalidJson(Запрос $request, ИсключениеВалидации $exception)
Преобразовать исключение валидации в ответ JSON. | |
| bool | shouldReturnJson(Запрос $request, Throwable $e)
Определить, следует ли возвращать ответ в формате JSON. | |
| $this | shouldRenderJsonWhen($callback)
Зарегистрировать вызываемый объект, определяющий, должен ли ответ обработчика исключений быть в формате JSON. | |
| Ответ|ОтветJSON|ПереадресацияОтвет | prepareResponse(Запрос $request, Throwable $e)
Подготовить ответ для данного исключения. | |
| Response | convertExceptionToResponse(Throwable $e)
Создать ответ Symfony для данного исключения. | |
| string | renderExceptionContent(Throwable $e)
Получить содержимое ответа для данного исключения. | |
| string | renderExceptionWithCustomRenderer(Throwable $e)
Отобразить исключение в строку с помощью зарегистрированного | |
| string | renderExceptionWithSymfony(Throwable $e, bool $debug)
Отобразить исключение в строку с помощью Symfony. | |
| Response | renderHttpException(HttpExceptionInterface $e)
Отобразить данное исключение HttpException. | |
| void | registerErrorViewPaths()
Зарегистрировать пути к шаблонам ошибок. | |
| string|null | getHttpExceptionView(HttpExceptionInterface $e)
Получить шаблон, используемый для отображения исключений HTTP. | |
| Ответ|ПереадресацияОтвет | toIlluminateResponse(Response $response, Throwable $e)
Преобразовать данное исключение в ответ Illuminate. | |
| ОтветJSON | prepareJsonResponse(Запрос $request, Throwable $e)
Подготовить ответ JSON для данного исключения. | |
| array | convertExceptionToArray(Throwable $e)
Преобразовать данное исключение в массив. | |
| void | renderForConsole(OutputInterface $output, Throwable $e)
Отобразить исключение в консоли. | |
| $this | dontReportDuplicates()
Не отслеживать дубликаты исключений. | |
| bool | isHttpException(Throwable $e)
Определить, является ли данное исключение исключением HTTP. | |
| LoggerInterface | newLogger()
Создать новый экземпляр логгера. |
Подробности
protected string firstClosureParameterType(Closure $closure)
Получить имя класса первого параметра данного Closure.
protected array firstClosureParameterTypes(Closure $closure)
Получить имена классов первого параметра данного Closure, включая типы объединения.
protected array closureParameterTypes(Closure $closure)
Получить имена/типы параметров данного Closure.
void __construct(Контейнер $container)
Создать новый экземпляр обработчика исключений.
void register()
Зарегистрировать обратные вызовы обработки исключений для приложения.
ReportableHandler reportable(callable $reportUsing)
Зарегистрировать обратный вызов для обработки ошибок.
$this renderable(callable $renderUsing)
Зарегистрировать обратный вызов для рендеринга ошибок.
$this map(Closure|string $from, Closure|string|null $to = null)
Зарегистрировать новое отображение исключений.
$this dontReport(array|string $exceptions)
Указать, что данный тип исключения не должен обрабатываться.
Псевдоним для "ignore".
$this ignore(array|string $exceptions)
Указать, что данный тип исключения не должен обрабатываться.
$this dontFlash(array|string $attributes)
Указать, что указанные атрибуты никогда не должны передаваться в сессию при ошибках валидации.
$this level(Throwable> $type, $level)
Установить уровень логирования для данного типа исключения.
void report(Throwable $e)
Обработать или записать в лог исключение.
protected void reportThrowable(Throwable $e)
Отправляет ошибку, основанную на методе обработки ошибок исключения или в логгер.
bool shouldReport(Throwable $e)
Определить, нужно ли обрабатывать исключение.
protected bool shouldntReport(Throwable $e)
Определить, входит ли исключение в список "не обрабатывать".
$this throttleUsing(callable $throttleUsing)
Указать обратный вызов, который должен использоваться для ограничения обработки исключений.
$this stopIgnoring(array|string $exceptions)
Удалить указанный класс исключения из списка исключений, которые должны игнорироваться.
protected array buildExceptionContext(Throwable $e)
Создать массив контекста для логирования данного исключения.
protected array exceptionContext(Throwable $e)
Получить переменные контекста по умолчанию для логирования исключений.
protected array context()
Получить переменные контекста по умолчанию для логирования.
$this buildContextUsing(Closure $contextCallback)
Зарегистрировать замыкание, которое должно использоваться для построения данных контекста исключения.
protected Response finalizeRenderedResponse(Request $request, Response $response, Throwable $e)
Подготовить окончательный, отрендеренный ответ для возврата браузеру.
$this respondUsing(callable $callback)
Подготовить окончательный, отрендеренный ответ для исключения с помощью заданного обратного вызова.
protected Throwable mapException(Throwable $e)
Преобразовать исключение с помощью зарегистрированного преобразователя, если это возможно.
protected mixed renderViaCallbacks(Request $request, Throwable $e)
Попытаться отрендерить ответ из запроса и исключения через обратные вызовы для рендеринга.
protected Response|JsonResponse|RedirectResponse renderExceptionResponse(Request $request, Throwable $e)
Отобразить ответ по умолчанию для исключения, если таковой есть.
protected Response|JsonResponse|RedirectResponse unauthenticated(Request $request, AuthenticationException $exception)
Преобразовать исключение аутентификации в ответ.
protected Response convertValidationExceptionToResponse(ValidationException $e, Request $request)
Создать объект ответа из данного исключения проверки.
protected Response|JsonResponse|RedirectResponse invalid(Request $request, ValidationException $exception)
Преобразовать исключение проверки в ответ.
protected JsonResponse invalidJson(Request $request, ValidationException $exception)
Преобразовать исключение валидации в JSON-ответ.
protected bool shouldReturnJson(Request $request, Throwable $e)
Определить, должен ли ответ обработчика исключений быть в формате JSON.
$this shouldRenderJsonWhen($callback)
Зарегистрировать вызываемый объект, определяющий, должен ли ответ обработчика исключений быть в формате JSON.
protected Response|JsonResponse|RedirectResponse prepareResponse(Request $request, Throwable $e)
Подготовить ответ для заданного исключения.
protected Response convertExceptionToResponse(Throwable $e)
Создать ответ Symfony для заданного исключения.
protected string renderExceptionContent(Throwable $e)
Получить содержимое ответа для заданного исключения.
protected string renderExceptionWithCustomRenderer(Throwable $e)
Отобразить исключение в строку с помощью зарегистрированного ExceptionRenderer.
protected string renderExceptionWithSymfony(Throwable $e, bool $debug)
Отобразить исключение в строку с использованием Symfony.
protected Response renderHttpException(HttpExceptionInterface $e)
Отобразить данное HttpException.
protected void registerErrorViewPaths()
Зарегистрировать пути к шаблонам ошибок.
protected string|null getHttpExceptionView(HttpExceptionInterface $e)
Получить шаблон, используемый для отображения HTTP-исключений.
protected Response|RedirectResponse toIlluminateResponse(Response $response, Throwable $e)
Преобразовать заданное исключение в ответ Illuminate.
protected JsonResponse prepareJsonResponse(Request $request, Throwable $e)
Подготовить JSON-ответ для заданного исключения.
protected array convertExceptionToArray(Throwable $e)
Преобразовать данное исключение в массив.
void renderForConsole(OutputInterface $output, Throwable $e)
| internal | Этот метод не предназначен для использования или переопределения вне фреймворка. |
Отобразить исключение в консоли.
$this dontReportDuplicates()
Не сообщать о дублируемых исключениях.
protected bool isHttpException(Throwable $e)
Определить, является ли данное исключение исключением HTTP.
protected LoggerInterface newLogger()
Создать новый экземпляр логгера.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/11.x/Illuminate/Foundation/Exceptions/Handler.html