Здравствуйте, есть сайт CMS аквилон написан где то в 10 году, работает на php7.3, но сейчас перешли на версию php 8.2 и стала появляться такая проблема при загрузке файла с компа на сервер, Как можно закоментить или что-то апдейтить, чтоб просто грубо эту проблему обойти? Fatal error: Uncaught TypeError: Aquilon_Catcher::handleException(): Argument #1 ($exception) must be of type Exception, Error given in include/aquilon/catcher.php:110 Stack trace: #0 [internal function]: Aquilon_Catcher->handleException() #1 {main} thrown in include/aquilon/catcher.php on line 110
просто и грубо - не в данном случае ... либо откатываться на 7.3, либо переписывать куски где поменялся вызов функций... ибо я думаю что всякие такие ошибки будут не в одном месте
Спасибо за ответ, но проблема с безопасностью, поэтому надо переходить на новую версию.. В общем понятно, буду думать, что дальше.
В доках гласит один из комментов: PHP: try { // Code that may throw an Exception or Error. } catch (Throwable $t) { // Executed only in PHP 7, will not match in PHP 5.x } catch (Exception $e) { // Executed only in PHP 5.x, will not be reached in PHP 7 } В твоем коде ожидался Exception, но пришел (новый) тип Error Вместо Exception установи Throwable --- Добавлено --- Throwable является родительским интерфейсом для всех объектов, выбрасывающихся с помощью выражения throw, включая классы Error и Exception.
Как выше написали, интерфейс Throwable был и в семерке. Т.е. сама ошибка вызвана чем-то другим. А отлов, да, для широты охвата можно делать при помощи Throwable.