Große Zahlen mit Tausendertrennzeichen formatieren

Wenn man eine große Zahl hat und diese der Übersichtlichkeit halber mit Tausendertrennzeichen versehen will, so kann man die Funktion number_format() verwenden. Als Alternative habe ich eine Funktion geschrieben, die grundsätzlich das gleiche macht:

Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
<?
$string
='1234567899990789645';
function 
decimal($string)
{
$zahl=array();
$new_string='';
$laenge=strlen($string);
for(
$i=1;$i<=floor($laenge/3);$i++)
{
$zahl[]=substr($string,$laenge-(3*$i),3);
}
if(
$laenge%3>0)
$zahl[]=substr($string,0,$laenge%3);
$zahlr=array_reverse($zahl);
foreach(
$zahlr as $val)
{
$new_string.=$val.'.';
}
return 
substr($new_string,0,-1);
}
echo 
decimal($string); // 1.234.567.899.990.789.645
?>