(PHP 7, PHP 8)
intdiv — 整数値の除算
num1割られる数。
num2
num1 を割る数。
num1 を num2 で割った整数商。
num2 が 0 の場合、DivisionByZeroError
例外がスローされます。num1 が PHP_INT_MIN
で num2 が -1 の場合、
ArithmeticError 例外がスローされます。
例1 intdiv() の例
<?php
var_dump(intdiv(3, 2));
var_dump(intdiv(-3, 2));
var_dump(intdiv(3, -2));
var_dump(intdiv(-3, -2));
var_dump(intdiv(PHP_INT_MAX, PHP_INT_MAX));
var_dump(intdiv(PHP_INT_MIN, PHP_INT_MIN));
?>上の例の出力は以下となります。
int(1) int(-1) int(-1) int(1) int(1) int(1)
例2 intdiv() に不正な除数を使った例
<?php
try {
intdiv(PHP_INT_MIN, -1);
} catch (Error $e) {
echo get_class($e), ': ', $e->getMessage(), PHP_EOL;
}
try
intdiv(1, 0);
} catch (Error $e) {
echo get_class($e), ': ', $e->getMessage(), PHP_EOL;
}
?>上の例の出力は以下となります。
ArithmeticError: Division of PHP_INT_MIN by -1 is not an integer DivisionByZeroError: Division by zero