Hallo,
Gibt's denn da kein printf in PHP mit %e Format-Operator?
Den gibt es schon, wobei der Parameter nur in der englischen Doku steht [unter sprintf()].
Allerdings ist gerade dieser Parameter in aelteren PHP-Versionen buggy (gibt 00 beim Exponent aus) und kann auch nur Werte bis ~1e+308 verarbeiten. Die 600 Stellen des OP fallen dann durch. Man kann das etwa so loesen (hier nur fuer positive Werte probiert):
<?php
function format_zahlstr($zahlstr,$k)
{
$hoch=strlen($zahlstr)-1;
$gueltigeziffern=15;
$kommastellen=$k;
return number_format(substr($zahlstr,0,1).".".substr($zahlstr,1,$gueltigeziffern-1),$kommastellen)."e+".$hoch;
}
$test="987654321012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789";
printf("%e",$test); // INFTo -- ohne die Endziffer 9 klappt es noch
print "<br>";
print format_zahlstr($test,5); // 9.87654e+308
?>
MfG, Thomas