Zahlen immer 5-Stellig ausgeben (führende Nullen)
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ankommen
array
ausgabe
behandeln
code
format
formatieren
formatierung
null
post
problem
sortieren
sortierung
string
treten
trust
umwandlung
url
zahl
zuweisung
-
Hallo
ich habe es hinbekommen eine Reihe von Zahlen so zu formatieren,
das die immer 5-STellig mit 2 Kommastellen sind (führende Nullen)
Bsp:
00123,45
00067,89
01025,23
00001,10
... usw
soweit OK, ... ABER, wenn ich diese Zahlen weiter verareiten will, (Sortierung)
dann greift das nicht mehr, und die führenen Nullen sind wieder weg
(nach übergabe in POST Variable)
gibt es eine Chance, dass ich die Werte mit den führenden Nullen
in der Ziel-Seite ankommen lasse? ... PHP scheint zu erkennen:
aha, Zahl, also weg mit den führenden Nullen, nur "Wert" merken
evtl als String behandeln? aber wie sage ich das vor dem Senden?
Danke -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hier ein Link zu Datentypen:
http://www.brain-and-trust.de/index.php?ID1=175
Du solltest erst die Variable, der du dann mit POST zuweist, in einen String wandeln und dann die Zuweisung machen. Ob man danach allerdings noch sortieren kann, weiss ich nicht. -
Hiho,
wie gehst du denn genau vor? Wann tritt das Problem genau auf?
Ich habe keine Probleme mit den führenden Nullen wenn ich so an die Sache heran gehe:
$foo = 1.3; $bar = 41.52; // Nachkommastellen formatieren $foo = number_format($foo, 2, ',', '\''); $bar = number_format($bar, 2, ',', '\''); // Führende Null $foo = str_pad($foo, 7, '0', STR_PAD_LEFT); $bar = str_pad($bar, 7, '0', STR_PAD_LEFT); $zip = array($foo, $bar); print_r($zip); // Sortieren rsort($zip); // Kontrollieren print_r($zip);
Ausgabe:
Array ( [0] => 0001,30 [1] => 0041,52 ) Array ( [0] => 0041,52 [1] => 0001,30 )
Und das funktioniert auch wunderbar, nachdem man es in Post Variablen übergeben hat. -
Ich verstehe das Problem nicht ganz.
Wenn ich dich recht verstanden habe, geht es dir um das Format bei der Ausgabe. Die Reiihenfolge bei der Sortierung müßte mit und ohne führende Nullen immer gleich sein.
Also wäre es doch am sinnvollsten, das gewünschte Format erst bei der Ausgabe zu definieren.
Eine Umwandlung in Strings engt nur die Möglichkeiten der Weiterverabeitung ein.
Der einfachste Weg zur Formatierung der Ausgabe wäre dieser:
$wert="123.45"; echo sprintf( "%08.2f",$wert);
Ausgabe: 00123.45
FF -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage