Abrunden von Dezimalzahlen auf zwei Stellen in PHP
Das Abrunden von Dezimalwerten auf bestimmte Stellen ist in verschiedenen Programmierszenarien oft notwendig. PHP bietet mehrere integrierte Methoden zum Runden, aber das Erreichen des gewünschten Ergebnisses beim Abrunden kann eine Herausforderung sein.
Zahlenformatierung:
Eine gängige Methode ist number_format() , was die Formatierung numerischer Werte ermöglicht. Das Ergebnis wird jedoch auf die angegebene Genauigkeit gerundet und nicht abgerundet. Beispielsweise ergibt „number_format(49.955, 2)“ „49.96“ anstelle des gewünschten „49.95“.
Substringing:
Ein anderer Ansatz ist substr(), das kann verwendet werden, um eine bestimmte Anzahl von Zeichen aus einer Zeichenfolge zu extrahieren. Diese Methode wird jedoch unzuverlässig, wenn die Zahl kleiner ist (z. B. „7.950“), da die signifikanten Ziffern abgeschnitten werden können.
Bodenbelagstechnik:
A mehr Eine effektive Lösung besteht darin, die Funktion floor() zu verwenden:
<code class="php">floor($number * 100) / 100</code>
Diese Technik multipliziert die Zahl mit 100, um den Dezimalpunkt um zwei Stellen nach rechts zu verschieben. Das Ergebnis wird dann gerundet (auf die nächste ganze Zahl abgerundet), wodurch der Dezimalteil effektiv abgeschnitten wird. Wenn Sie das Ergebnis schließlich durch 100 dividieren, wird die Skala der ursprünglichen Zahl wiederhergestellt.
Wenn Sie diese Methode beispielsweise auf „49,955“ anwenden, erhalten Sie:
<code class="php">floor(49.955 * 100) / 100 = 49.95</code>
Dieser Ansatz rundet den Wert genau auf zwei Dezimalstellen Unter Beibehaltung des Vorzeichens und der Skalierung der ursprünglichen Zahl. Es bietet eine zuverlässige Lösung zum Abrunden von Dezimalwerten in PHP.
Das obige ist der detaillierte Inhalt vonWie rundet man Dezimalwerte in PHP auf zwei Stellen ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!