Zehn
<?php

/**
  This function has still some bugs and shoud be rewritten

  by David Tibbe, 2004/08/03
**/

function parseZahl($nr$stelle)
{
    
$out '';
    
$cutted FALSE;

    if (
$nr 1)
    {
        
$anz 1;
    }
    else
    {
        
$anz 0;
    }

    
$anhang = array(
                 array(
''''),
                 array(
'tausend''tausend'),
                 array(
'millionen''millionen'),
                 array(
'milliarde''milliarden'),
                 array(
'billionen''billionen'),
                 array(
'billiarde''billiarden'),
                 array(
'trillionen''trillionen'),
                 array(
'trilliarde''trilliarden'),
                 array(
'quadrillionen''quadrillionen'),
                 array(
'quadrilliarde''quadrilliarden'),
                 array(
'quintillionen''quintillionen'),
                 array(
'quintilliarde''quintilliarden'),
                 array(
'sextillionen''sextillionen'),
                 array(
'sextilliarde''sextilliarden'),
                 array(
'septillionen''septillionen'),
                 array(
'septilliarde''septilliarden'),
                 array(
'oktillionen''oktillionen'),
                 array(
'oktilliarde''oktilliarden'),
                 array(
'nonillionen''nonillionen'),
                 array(
'nonilliarde''nonilliarden'),
                 array(
'dezillionen''dezillionen'),
                 array(
'dezilliarde''dezilliarde')
              );
    
$zahlen = array('''ein#''zwei',
                    
'drei''vier''f&uuml;nf',
                    
'sechs''sieben''acht',
                    
'neun''zehn''elf',
                    
'zw&ouml;lf''dreizehn',
                    
'vierzehn''f&uuml;nfzehn',
                    
'sechzehn''siebzehn',
                    
'achtzehn''neunzehn');
    
$ziger = array('''''zwanzig''drei&szlig;ig',
                   
'vierzig''f&uuml;nfzig',
                   
'sechzig''siebzig',
                   
'achtzig''neunzig');

    if (
$nr 99)
    {
        
$out $zahlen[$nr{0}].'hundert';
        
$out str_replace('#'''$out);

        
$nr substr($nr12);
        
$cutted TRUE;
    }

    if (
$nr 19)
    {
        if (
$nr{1} != 0)
        {
            
$out $out.$zahlen[$nr{1}].'und';
            
$out str_replace('#'''$out);
        }
        
$out $out.$ziger[$nr{0}];
    }
    else
    {
        
$out $out.$zahlen[(int)$nr];
        
$out str_replace('#''e'$out);
    }

    if (
$out == 'eine')
    {
        if (
$stelle == 1)
        {
            
$out 'ein';
        }
        else if (
$stelle == 0)
        {
            
$out 'eins';
        }
    }

    if ((int)
$nr !== || $cutted)
    {
        
$out $out.$anhang[$stelle][$anz];
    }

    return 
$out;
}


$zahl $_GET['zahl'];
$part = array();


while (
strlen($zahl) > 2)
{
    
$part[] = substr($zahl, -3);
    
$zahl substr($zahl0, -3);
}

if (!empty(
$zahl))
{
    
$part[] = $zahl;
}

$part array_reverse($part);

$myStr '';

for (
$i 0$i sizeof($part); $i++)
{
    
$myStr $myStr.parseZahl($part[$i], sizeof($part) - $i 1);
}

$myStr ucfirst($myStr);

echo 
$myStr.'<hr>';

highlight_file(__FILE__);

?>