(PHP 8 >= 8.4.0)
bcdivmod — Get the quotient and modulus of an arbitrary precision number
Get the quotient and remainder of dividing num1
by
num2
.
num1
Der Dividend als Zeichenkette.
num2
Der Divisor als Zeichenkette.
scale
null
, wird die mit bcscale() definierte Standard-Genauigkeit verwendet
oder auf den Wert der INI-Direktive
bcmath.scale
zurückgegriffen.
Returns an indexed array where the first element is the quotient as a string and the second element is the remainder as a string.
Diese Funktion löst in den folgenden Fällen einen ValueError aus:
num1
oder num2
ist keine wohlgeformte numerische BCMath-Zeichenkette.
scale
liegt außerhalb des gültigen Bereichs.
Wenn num2
0
ist, löst diese
Funktion eine DivisionByZeroError-Exception
aus.
Beispiel #1 bcdivmod() example
<?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
?>
Beispiel #2 bcdivmod() with decimals
<?php
[$quot, $rem] = bcdivmod('5.7', '1.3', 1);
echo $quot; // 4
echo $rem; // 0.5
?>