Heim >Backend-Entwicklung >PHP-Tutorial >Einführung in verschiedene Methoden zur Beibehaltung von zwei Dezimalstellen in PHP

Einführung in verschiedene Methoden zur Beibehaltung von zwei Dezimalstellen in PHP

青灯夜游
青灯夜游nach vorne
2020-07-18 15:28:528052Durchsuche

Einführung in verschiedene Methoden zur Beibehaltung von zwei Dezimalstellen in PHP

1. Situation ohne Überführung

Zum Beispiel nimmt 3,149569 zwei Dezimalstellen an und die letzten beiden Ziffern können nicht abgerundet werden. Ergebnis: 3.14.

Sie können die Bodenfunktion verwenden

Diese Funktion rundet. Beispielsweise ergibt „floor(4.66456)“: 4.

floor(9.1254) ergibt 9.

Um zwei Dezimalstellen zu entfernen, müssen Sie daher zuerst mit 100 multiplizieren, dann runden und dann durch 100 dividieren, das heißt:

$a=floor(3.149569*100)/100

Zu diesem Zeitpunkt wird ein Fehler angezeigt Bei Gleitkommaberechnungen wird dieses Problem durch die typlose Funktion von PHP gelöst. Zuerst wird strval in einen String umgewandelt und dann wird der Typ automatisch erkannt. Die Funktion strval() wurde verwendet, um den Prozentsatz unten zu berechnen

Berechnen Sie den Prozentsatz

$successRate = floor(strval((2/3)*10000))/10000*100;
$result = $successRate.'%';

2 >

Rundungsfunktion

float round ( float val [, int precision])
gibt das Ergebnis der Rundung von val gemäß der angegebenen Genauigkeit (der Anzahl der Dezimalstellen nach dem Dezimalpunkt) zurück.

Die Genauigkeit kann auch negativ oder Null sein (Standard).

<?php
echo round(3.4);         // 3
echo round(3.5);         // 4
echo round(3.6);         // 4
echo round(3.6, 0);      // 4
echo round(1.95583, 2);  // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);    // 5.04
echo round(5.055, 2);    // 5.06

sprintf-Funktion

implementiert die Rundung. Wenn keine Dezimalstellen vorhanden sind, wird die angegebene Dezimalstelle automatisch mit dem angegebenen Zeichen (angegeben 0) gefüllt Anzahl der Ziffern

echo sprintf("%01.2f", 5.228);  //  5.23
echo sprintf("%01.2f", 5.224);  //  5.22
echo sprintf("%01.2f", 5);      //  5.00

Zahlenformatfunktion

Wenn sie keine Dezimalstelle hat, wird automatisch 0 zur angegebenen Anzahl von Dezimalstellen hinzugefügt

echo number_format(5.228,2);    //  5.23
echo number_format(5.224,2);    //  5.22
echo number_format(5,2);        //  5.00

Rundungsfunktion

Diese Funktion kann eine Rundung erreichen, aber wenn sie keine Dezimalstellen hat, hat sie nach der weiteren Verarbeitung von

echo round(5.228,2);    //  5.23
echo round(5.224,2);    //  5.22
echo round(5,2);        //  5

php keine Dezimalstellen Rundungsmethode

echo ceil(4.4);     //  5
echo ceil(4.6);     //  5

PHP-Rundungsmethode

echo floor(4.4);        //  4
echo floor(4.6);        //  4
Empfohlene verwandte Tutorials: „

PHP-Tutorial

Das obige ist der detaillierte Inhalt vonEinführung in verschiedene Methoden zur Beibehaltung von zwei Dezimalstellen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen