PHP 8.1.0 RC 2 available for testing

Класс RangeException

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

Введение

Выбрасывается исключение, чтобы указать ошибки диапазона во время выполнения программы. Как правило, это означает, что была арифметическая ошибка, отличная от недополнения/ переполнения. Это версия DomainException, предназначенная для времени выполнения.

Обзор классов

class RangeException extends RuntimeException {
/* Наследуемые свойства */
protected string $message;
protected int $code;
protected string $file;
protected int $line;
/* Наследуемые методы */
public Exception::__construct(string $message = "", int $code = 0, ?Throwable $previous = null)
final public Exception::getMessage(): string
final public Exception::getCode(): int
final public Exception::getFile(): string
final public Exception::getLine(): int
final public Exception::getTrace(): array
final public Exception::getTraceAsString(): string
public Exception::__toString(): string
final private Exception::__clone(): void
}
add a note add a note

User Contributed Notes 1 note

up
2
evguenia dot chagnon at gmail dot com
4 years ago
CF. DomainException  : "DomainException corresponds to RangeException and we should use them in simillar situations.  But first exception is designed to use when we are sure the problem is with our project, third-part elements etc. (simply: logical error), the second way is designed to use when we are sure the problem is with input data or environment (simply: runtime error)."

function divide($divident, $input) {
    if(!is_numeric($divident) || !is_numeric($input)) {
        throw new InvalidArgumentException("Function accepts only numeric values");
    }
    if($input == 0) {
        throw new RangeException("Divisor must not be zero");
    }
    return $divident / $input;
}
To Top