Я обновился до Laravel 7.1 и теперь с Symfony 5 эти классы больше не существуют:
use Symfony\Component\Debug\Exception\FlattenException;
use Symfony\Component\Debug\ExceptionHandler as SymfonyExceptionHandler;
Я использовал их в своем файле app \ Exceptions \ Handler. php, чтобы отправлять уведомления по электронной почте, когда возбуждаются исключения, и они хорошо работали в Laravel 6, но ломались, когда я обновлял с 6.x до 7.1.2, которая также повышалась до Symfony 5.
Я заменил вышеупомянутые классы с этими:
use Symfony\Component\ErrorHandler\ErrorRenderer\HtmlErrorRenderer;
use Symfony\Component\ErrorHandler\Exception\FlattenException;
и затем заменил это:
$e = FlattenException::create($exception);
$handler = new SymfonyExceptionHandler();
$html = $handler->getHtml($e);
на это:
$e = FlattenException::create($exception);
$handler = new HtmlErrorRenderer();
$content = $handler->getBody($e);
, который работает, но теперь вместо получения содержимого отладки в В электронном письме, которое я использовал раньше, вместо этого я получаю более простое c сообщение об ошибке, так как оно предназначено для публикации c.
Примеры различных форматов вы можете увидеть здесь: https://symfony.com/doc/current/controller/error_pages.html
Я уверен, что есть кое-что простое, что мне не хватает, но я еще не выяснил, как заставить его отправить мне подробные данные об исключениях, которые я использовал до обновление.
Есть предложения?