DerMatze Geschrieben 7. Februar 2005 Geschrieben 7. Februar 2005 Servus hab da n Problemchen: Ich habe eine Funktion die einen Wert (muesste float sein) bekommt, den umwandelt und einen String zurueckgibt. Leider bekommt man ab einen bestimmten groesse des Eingangswertes das ganze als Scientific Notation dargestellt, was net so angenehm ist Was ich braeuchte is eine Umwandlung, der ich den Eingangswert geben und einen String als "echte" Zahl zurueck bekomme. 1.111111E+12 = 1111111000000 (oder so aehnlich) Helft mir Zitieren
DerMatze Geschrieben 8. Februar 2005 Autor Geschrieben 8. Februar 2005 Und hier die Loesung des Ganzen: $suche="E"; $strlen_ex = strlen($money); if (stristr($money, $suche)) { $exponent=substr($money,-2); $search_position=$strlen_ex - 4; $money_wo_ex=substr($money,0,$search_position); $money_wo_ex_len=strlen($money_wo_ex); $money_wo_komma=substr($money_wo_ex,0,1) . substr($money_wo_ex,2,$money_wo_ex_len-2); if (strlen($money_wo_komma) < (1 + $exponent)) { $reallen=1+$exponent; $missing=$reallen-strlen($money_wo_komma); for ($j=0; ($j < $missing); $j++) { $money_wo_komma .= "0"; } } $money=$money_wo_komma; }[/php] Ob das nun die Sauberste Loesung is, lasse ich mal dahingestellt Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.