У меня есть класс с именем Error
, который при загрузке зарегистрирует функцию с именем errorHandler
, используя метод set_error_handler
в PHP.Однако эта функция вернет NULL
, если функция не загружается или если PHP использует встроенный обработчик ошибок по умолчанию.Я не могу понять, почему моя функция не принимается.У кого-нибудь есть хорошие догадки?
<?php
declare (strict_types = 1);
namespace Request\Configuration;
use Errors\Exception\FatalException;
class Error extends Template
{
public static function load(): void
{
$result = set_error_handler('self::errorHandler', error_reporting());
var_dump($result);
}
public static function errorHandler(
int $number,
string $message,
string $file = null,
int $line = null,
array $context = null
) {
throw new FatalException('PHP_ERROR: ' . $message, 0);
}
}
Этот класс при загрузке возвращает NULL
.