Hallo,
gibt es denn eine möglichkeit in php nachkommastellen abzutrennen um sie separat weiterverarbeiten zu können? der umweg über floor nimmt unmengen an zeilen ein :-/
gruß
du ciel
Seite 1 von 1
Frac-ähnliche Funktion Auch In Php Verfügbar?
Anzeige
#2
geschrieben 04. April 2007 - 16:00
spontan fällt mir printf ein
So sind aber leider natürlich ganz weg.
printf("%.1f", "1.337"); // ergibt 1.3 printf("%.2f", "1.337"); // ergibt 1.33
So sind aber leider natürlich ganz weg.
#3 _PelzigesWaldtier_
geschrieben 04. April 2007 - 16:45
Ich kenne nur die Delphi-Funktion frac(). Die holt sich die Nachkommastellen.
Die müsste doch in PHP in etwa so aussehen, oder?
Hoffe das war's. Sonst einfach nochmal so erklären, dass auch ich es verstehe.
Edit: Bessere Lösung, siehe unten.
Grüße
PelzigesWaldtier
Zitat
5.123 -> 0.123
-3.987 -> -0.987
-3.987 -> -0.987
Die müsste doch in PHP in etwa so aussehen, oder?
function frac($n) { $n = (float) trim($n); $r = '0'.substr($n, strpos($n, '.'), strlen($n)); if ($n<0) {$r = '-'.$r;} return $r; }
Hoffe das war's. Sonst einfach nochmal so erklären, dass auch ich es verstehe.
Edit: Bessere Lösung, siehe unten.
Grüße
PelzigesWaldtier
Dieser Beitrag wurde von PelzigesWaldtier bearbeitet: 04. April 2007 - 16:56
#4
geschrieben 04. April 2007 - 16:51
notfalls kann man sich doch einfach ne funktion schreiben, die den wert auf eine ganze zahl abrundet und diese zahl vom wert subtrahiert - bzw. bei negativen zahlen aufrundet.
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
#5 _PelzigesWaldtier_
geschrieben 04. April 2007 - 16:53
So zum Beispiel:
function frac2($n) { $r = (float) $n - (int) $n; return $r; }
#6
geschrieben 06. April 2007 - 10:52
danke ... so ähnlich hatt ichs ja auch gemacht, dachte aber dass php sowas wie in delphi bietet ... die funktion ist dennoch recht handlich
LG,
du ciel
LG,
du ciel
Thema verteilen:
Seite 1 von 1