Thomas Schmieder: Datentyp für Eurich?

Beitrag lesen

Guten [Tageszeit],

Hallo nochmal,

habe mal einen kleinen Versuch für Dich angestellt. Man muss also aufpassen, ob die Nummer schon deutsch formatiert ist, oder nicht...

<?PHP #### number2string.php ####

$number     = 78654123.56;  // nummer liegt im decimal-Format der DB vor
  $number_str = number_format($number,2, ',', '.');

//                               nummer, dezimalstellen, Fraktaltrenner, 1000erSeparator

echo $number_str;          // und ausgabe

echo "<hr>";  // horizontale Trennlinie

$number     = "235890.456";  // Nummer liegt als "amerikanischer String" vor
  $number_str = number_format($number,2, ',', '.');  //noch ein Versuch
  echo $number_str;          // und ausgabe -> siehe da, gerundet...

// das waren gelich zwei Erkenntnisse. String geht und runden auch

echo "<hr>";  // na, das ist wieder die Linie

// So nun die Feuerprobe: //Nummer als deutschen String übergeben

$number_str2 = number_format($number_str,2, ',', '.');

// obwohl die Formatierung für einen deutschen String eingegeben wurde, hat die dumme Funktion das nicht erkannt, dass auch das Argument schon deutsch formatiert war... Na, muss man eben dran denken. Immer als amerikanische Zahl oder String übergeben!

echo $number_str2;  // sieh da, da hat er sich aber was feines ausgedacht

echo "<hr>";   // und das ist wieder eine Linie *ggg*

?>

Liebe Grüße aus http://www.braunschweig.de

Tom

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.