bcdivmod

(PHP 8 >= 8.4.0)

bcdivmodRenvoie le quotient et le reste d'un nombre de précision arbitraire

Description

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

Renvoie le quotient et le reste de la division de num1 par num2.

Liste de paramètres

num1

Le dividende, sous la forme d'une chaîne de caractères.

num2

Le diviseur, sous la forme d'une chaîne de caractères.

scale
Ce paramètre est utilisé pour définir le nombre de chiffres après la virgule dans le résultat. Si null, il prendra par défaut la valeur définie par bcscale(), ou, à défaut, la valeur de la directive INI bcmath.scale.

Valeurs de retour

Renvoie un tableau indexé où le premier élément est le quotient sous forme de chaîne et le second élément est le reste sous forme de chaîne.

Erreurs / Exceptions

Cette fonction lève une exception ValueError dans les cas suivants :

  • num1 ou num2 n'est pas une chaîne numérique BCMath correctement formée.
  • scale est en dehors de la plage valide.

Cette fonction lève une exception DivisionByZeroError si num2 est égal à 0.

Exemples

Exemple #1 Exemple de 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
?>

Exemple #2 bcdivmod() avec des décimaux

<?php
[$quot, $rem] = bcdivmod('5.7', '1.3', 1);
echo
$quot; // 4
echo $rem; // 0.5
?>

Voir aussi

  • bcdiv() - Divise deux nombres de grande taille
  • bcmod() - Retourne le reste d'une division entre nombres de grande taille
add a note

User Contributed Notes

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