Maison  >  Article  >  développement back-end  >  Comment PHP gère les fonctions de calcul de haute précision

Comment PHP gère les fonctions de calcul de haute précision

小云云
小云云original
2018-03-17 10:21:281968parcourir

Cet article partage principalement avec vous comment PHP gère les fonctions de calcul de haute précision. Il partage principalement avec vous deux méthodes de représentation graphique. J'espère qu'il pourra vous aider.

Méthode 1 :

PHP fournit une calculatrice binaire (Binary Calculator) pour des calculs mathématiques de précision arbitraire, qui prend en charge des nombres de toute taille et précision, décrits sous forme de chaîne

bcadd — addition
bccomp — comparaison
bcp — division
bcmod — trouver le reste
bcmul — multiplication
bcpow — puissance
bcpowmod — augmentez d'abord la puissance puis trouvez le reste
bcscale — Définir la précision de la décimale pour toutes les fonctions
bcsqrt — Trouver les racines carrées
bcsub — Soustraction

Méthode 2 :

J'ai rencontré un problème étrange récemment, le centre commercial a payé via Les commandes WeChat coûtent souvent un centime de moins. Après enquête, cela est dû à la précision des opérations en virgule flottante PHP

Cela est dû à la précision des opérations en virgule flottante PHP. Le Bolg de Brother Niao a des explications détaillées. http://www.laruence.com/2013/03/26/2884.html,
Lorsque les décimales sont représentées en binaire, 0,58 est une valeur infiniment longue pour le binaire

La représentation binaire de 0,58. est fondamentalement (52 bits) est : 0010100011110101110000101000111101011100001010001111

La représentation binaire de 0,57 est fondamentalement (52 bits) : 1110000101000111101

Convertir en nombre à virgule flottante (double précision 64 bits)

0,58 - > 0,57999999999999996

0,57 -> 7

Solution :

Recommandations associées :
(int)((0.58*1000)/10) = 58

Exemples courants de fonctions de date et de calcul MySQL expliqués

Fonction de calcul de probabilité PHP

Comment calculer le temps d'exécution d'une fonction dans le tutoriel php_PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn