Bei der Verwendung von php+ - * / zur Berechnung von Gleitkommazahlen können einige Probleme mit falschen Berechnungsergebnissen auftreten, wie folgt:
<?php echo intval(0.58 * 100); //输出57 ?>
Lösung
<?php echo bcmul(0.58, 100); //输出58 ?>
Empfohlen : "PHP-Tutorial"
● PHP stellt eine hochpräzise BC-Funktionsbibliothek zur Verfügung, um dieses Problem zu lösen
● bcadd – Addiere zwei hochpräzise Zahlen
● bcsub – Subtrahiere zwei hochpräzise Zahlen
● bcmul – Multipliziere zwei hochpräzise Zahlen
● bcdiv – Dividiere zwei hochpräzise Zahlen
● bccomp – Vergleicht zwei hochpräzise Zahlen, gibt -1, 0, 1 zurück
● bcmod – Ermittelt den Rest einer hochpräzisen Zahl
● bcpow – Ermittelt die Potenz einer hochpräzisen Zahl
● bcpowmod – Ermitteln Sie die Potenz hochpräziser Zahlen und ermitteln Sie den Modul, der in der Zahlentheorie sehr häufig verwendet wird
● bcscale – Konfigurieren Sie die Standardanzahl von Dezimalstellen, die „scale“ entspricht =" in Linux bc
● bcsqrt – Finden Sie die Quadratwurzel einer hochpräzisen Zahl
Das obige ist der detaillierte Inhalt vonProblem mit der PHP-Gleitkommagenauigkeit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!