Как изменить сообщение об ошибке PHP на своё собственное сообщение?

Как можно перехватить ошибки деления на ноль и выводить собственные сообщения об ошибке в формате JSON вместо стандартного сообщения о DivisionByZeroError или предупреждения от PHP?
  • 10 апреля 2024 г. 19:29
Ответы на вопрос 2
Для изменения сообщения об ошибке PHP на своё собственное сообщение можно использовать функцию set_error_handler(). Например, следующий код поможет перехватить ошибку деления на ноль и выводить собственные сообщения:

```php
function customErrorHandler($errno, $errstr, $errfile, $errline) {
    http_response_code(500);
    echo json_encode(array('error' => 'Division by zero is not allowed'));
}

set_error_handler('customErrorHandler');

// Пример деления на ноль
try {
    $result = 1 / 0;
} catch (DivisionByZeroError $e) {
    // Исключение перехвачено
    // Можно обработать и вывести собственное сообщение
    echo json_encode(array('error' => 'Division by zero is not allowed'));
}
```

В данном примере, при возникновении ошибки деления на ноль будет вызываться функция customErrorHandler(), которая устанавливает код ошибки 500 и выводит JSON-структуру с собственным сообщением об ошибке.

Таким образом, вы можете перехватить ошибки и выводить собственные сообщения в необходимом вам формате вместо стандартных сообщений PHP.
перехват ошибок. 
прям так и гуглить "php перехват ошибок".
Похожие вопросы