PHP 8.4.0 RC4 available for testing

ArithmeticError

(PHP 7, PHP 8)

はじめに

ArithmeticError は、数学的な操作でエラーが発生した場合にスローされます。 たとえばマイナスのビットシフトを行おうとした場合などに発生します。 また、結果が int の範囲をこえてしまうような intdiv() の呼び出しの際にも発生します。

クラス概要

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
}
add a note

User Contributed Notes 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