(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 in Stringform.
num2
Der Divisor in Stringform.
scale
Dieser optionale Parameter kann benutzt werden, um die Anzahl der Nachkommastellen im Ergebnis festzulegen. Sie können mit Hilfe der bcscale()-Funktion auch einen globalen Vorgabewert für alle Funktionen festlegen.
Returns an indexed array where the first element is the quotient as a string and the second element is the remainder as a string.
In den folgenden Fällen wirft diese Funktion einen ValueError:
num1
oder num2
ist keine wohlgeformte numerische BCMath-Zeichenkettescale
liegt außerhalb des gültigen Bereichs
Wenn num2
0
ist, wirft diese
Funktion eine DivisionByZeroError-Exception.
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
?>