Syntaxe
|
function bcmod($left_operand, $modulus);
|
Paramètres
| Nom |
Description |
| $left_operand |
Ce paramètre permet d'indiquer l'opérande de numérateur (dividende). |
| $right_operand |
Ce paramètre permet d'indiquer l'opérande de diviseur (dénominateur). |
Retour
| Valeur |
Description |
| NULL |
Cette valeur permet d'indiquer qu'il n'y a pas de restant du résultat de la division. Donc, la valeur est 0. |
| chaine de caractères |
Ces valeurs permettent d'indiquer du restant de la division. |
Description
Cette fonction permet d'effectuer le calcul du restant de la division de deux nombres avec un haut niveau de précision arithmétique.
Remarques
- Calcul du reste d'une division avec précision arbitraire : La fonction bcmod permet de calculer le reste de la division entière entre deux nombres
représentés sous forme de chaînes de caractères. Contrairement à l'opérateur % natif de PHP, elle peut gérer des nombres très grands ou très petits grâce à l'extension
BC Math.
- Utilisation des chaînes pour éviter les limites des types natifs : bcmod prend en entrée deux chaînes de caractères numériques, ce qui permet de contourner
les limites des types natifs de PHP, notamment pour les nombres dépassant les capacités des entiers sur 32 bits ou 64 bits.
- Retourne toujours un entier ou NULL : Le résultat retourné par bcmod est toujours une chaîne de caractères représentant un entier, car le reste d'une
division entière ne contient pas de partie décimale. Si le second opérande est zéro, la fonction retourne NULL pour éviter une division par zéro.
- Support des nombres négatifs : La fonction gère correctement les nombres négatifs. Par exemple, bcmod("-10", "3") retourne "-1", ce qui respecte les règles
mathématiques des modulos avec des valeurs négatives.
- Précision non configurable : Contrairement à d'autres fonctions BC Math, bcmod ne permet pas de spécifier un paramètre
$scale. Cela s'explique par le fait que le reste d'une division entière ne peut pas avoir de partie fractionnaire.
- Dépendance à l'extension BC Math : Comme toutes les fonctions BC Math, bcmod nécessite que l'extension
BC Math soit activée dans votre environnement PHP. Si elle n'est pas disponible, la fonction ne sera pas utilisable, et il faudra recourir
à une autre méthode.
- Cas d'utilisation dans les algorithmes cryptographiques : bcmod est souvent utilisée dans des algorithmes cryptographiques ou dans la manipulation de grands
nombres, où les calculs modulaires jouent un rôle crucial, comme dans RSA ou les calculs de clefs publiques et privées.
- Attention aux formats non valides : Les paramètres doivent être des chaînes contenant des nombres valides. Si des caractères non numériques ou des formats
incorrects sont utilisés, PHP génère une erreur ou un avertissement. Une validation des entrées est donc nécessaire avant de les passer à la fonction.
Dernière mise à jour : Mercredi, le 25 mars 2015