(PHP 8 >= 8.4.0)
bcdivmod — 任意精度数値の商と剰余を取得する
num1
被除数を表す文字列。
num2
割る数を表す文字列。
scale
null
の場合は、 bcscale() 関数でグローバルに
設定した桁数をデフォルトとして使用します。
それも設定されていない場合は bcmath.scale
INI ディレクティブの値を使用します。
この関数は、以下の場合に ValueError をスローします:
num1
もしくは num1
が、BCMath で有効でない数値形式の文字列である場合scale
が範囲外の値である場合
この関数は、 num2
が 0
である場合、
DivisionByZeroError 例外をスローします。
例1 bcdivmod() の例
<?php
bcscale(0);
[$quot, $rem] = bcdivmod('5', '3');
echo $quot; // 1
echo $rem; // 2
[$quot, $rem] = bcdivmod('5', '-3');
echo $quot; // -1
echo $rem; // 2
[$quot, $rem] = bcdivmod('-5', '3');
echo $quot; // -1
echo $rem; // -2
[$quot, $rem] = bcdivmod('-5', '-3');
echo $quot; // 1
echo $rem; // -2
?>
例2 bcdivmod() に小数の値を指定する
<?php
[$quot, $rem] = bcdivmod('5.7', '1.3', 1);
echo $quot; // 4
echo $rem; // 0.5
?>