PHP 8.4.0 RC4 available for testing

Исключение ArithmeticError

(PHP 7, PHP 8)

Введение

Исключение ArithmeticError выбрасывается, когда возникает ошибка при выполнении математических операций. Такие ошибки провоцируют побитовым смещением на отрицательное значение или вызовом функции intdiv(), которая приводит значение, которое не входит в допустимую границу целых чисел (int).

Обзор класса

class ArithmeticError extends Error {
/* Наследуемые свойства */
protected string $message = "";
private string $string = "";
protected int $code;
protected string $file = "";
protected int $line;
private array $trace = [];
private ?Throwable $previous = null;
/* Наследуемые методы */
public Error::__construct(string $message = "", int $code = 0, ?Throwable $previous = null)
final public Error::getMessage(): string
final public Error::getCode(): int
final public Error::getFile(): string
final public Error::getLine(): int
final public Error::getTrace(): array
private Error::__clone(): void
}
Добавить

Примечания пользователей 1 note

up
0
nima dot shirinzadeh at gmail dot com
4 years ago
the first example shifted by the positive number and the result is 4, but the second example shifted by the negative number and the result is ArithmeticError(this example is the same for left shift)
<?php

$shif
=1;
$number = 8;
$result = $number >> $shif;
echo
$result; //// 1000 >> 01000 = 4

$shif =-1;
$number = 8;
$result = $number >> $shif;
////result is ArithmeticError
?>
To Top