bcdivmod

(PHP 8 >= 8.4.0)

bcdivmodGet the quotient and modulus of an arbitrary precision number

Beschreibung

bcdivmod(string $num1, string $num2, ?int $scale = null): string

Get the quotient and remainder of dividing num1 by num2.

Parameter-Liste

num1

Der Dividend als Zeichenkette.

num2

Der Divisor als Zeichenkette.

scale
Dieser Parameter wird verwendet, um die Anzahl der Nachkommastellen im Ergebnis festzulegen. Falls null, wird die mit bcscale() definierte Standard-Genauigkeit verwendet oder auf den Wert der INI-Direktive bcmath.scale zurückgegriffen.

Rückgabewerte

Returns an indexed array where the first element is the quotient as a string and the second element is the remainder as a string.

Fehler/Exceptions

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.

Beispiele

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
?>

Siehe auch

  • bcdiv() - Division zweier Zahlen beliebiger Genauigkeit
  • bcmod() - Modulo zweier Zahlen mit beliebiger Genauigkeit
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top