Syntaxe
function bcdiv($left_operand,$right_operand);
|
function bcdiv($left_operand,$right_operand,$scale);
|
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). |
$scale |
Ce paramètre permet d'indiquer le nombre de chiffre après la décimale à placer dans le résultat. |
Retour
Valeur |
Description |
chaine de caractères |
Ces valeurs permettent d'indiquer le quotient des deux nombres. |
Description
Cette fonction permet d'effectuer la division de deux nombres avec un haut niveau de précision arithmétique.
Remarques
- Division de nombres avec précision arbitraire : La fonction bcdiv permet de réaliser une division entre deux nombres représentés sous forme de chaînes de
caractères, tout en respectant une précision arbitraire. Contrairement à l'opérateur division / natif de PHP, elle garantit un contrôle strict sur le nombre de chiffres
après la virgule.
- Précision configurable via $scale : Le paramètre $scale détermine le nombre de chiffres à conserver après la virgule dans le résultat. Si ce paramètre
est omis, la valeur globale définie par bcscale() est utilisée ou zéro par défaut, ce qui donne un résultat arrondi à l'entier le plus proche.
- Gestion des divisions par zéro : bcdiv retourne NULL en cas de tentative de division par zéro, contrairement à une erreur ou une exception. Cela permet de
gérer plus facilement les cas où le dénominateur pourrait être invalide en ajoutant une vérification supplémentaire dans votre code.
- Support des nombres négatifs : La fonction gère correctement les nombres négatifs. Par exemple, bcdiv("-10.5", "2", 2) renvoie "-5.25", ce qui garantit une cohérence
mathématique, même pour les valeurs négatives ou mixtes.
- Utilisation dans les applications de haute précision : bcdiv est particulièrement utile dans des domaines où la précision est cruciale, comme les calculs
financiers ou scientifiques. Les erreurs d'arrondi des types flottants natifs de PHP sont évitées grâce à la gestion en chaîne de caractères.
- Limitation aux chaînes numériques valides : Les deux paramètres numériques doivent être des chaînes valides contenant uniquement des chiffres, un point décimal
et éventuellement un signe négatif. Si un format incorrect est fourni, PHP génère un avertissement ou un comportement inattendu.
- Comparaison avec l'opérateur / : L'opérateur / de PHP est plus rapide pour les calculs simples, mais il ne garantit pas la précision des décimales. bcdiv
offre un contrôle accru sur les résultats, ce qui est essentiel dans les scénarios où chaque décimale a de l'importance.
- Extension BCMath requise : La fonction bcdiv nécessite l'extension BCMath activée dans votre environnement PHP. Si cette extension n'est
pas installée, vous ne pourrez pas utiliser la fonction et devrez opter pour d'autres solutions, comme GMP ou des bibliothèques personnalisées.
Références
PHP 4 - Guide du développeur, Edition First Interactive, Blake Schwendiman, 2002, ISBN: 2-84427-283-5, page 372
Dernière mise à jour : Mercredi, le 25 mars 2015