# This little script was whipped up to convert numbers to words for use in a cheque book, it has an upper limit of 999999999 but that should take care of most sane amounts of cash. Should you require a function that needs to spell out more cash than this, my rates are \$7474.00/hr ;)

``` <?php/** *  Function:   convert_number **  Description: *  Converts a given integer (in range [0..1T-1], inclusive) into *  alphabetical format ("one", "two", etc.)**  @int**  @return string**/ function convert_number(\$number) {     if ((\$number < 0) || (\$number > 999999999))     {     throw new Exception("Number is out of range");    }     \$Gn = floor(\$number / 1000000);  /* Millions (giga) */     \$number -= \$Gn * 1000000;     \$kn = floor(\$number / 1000);     /* Thousands (kilo) */     \$number -= \$kn * 1000;     \$Hn = floor(\$number / 100);      /* Hundreds (hecto) */     \$number -= \$Hn * 100;     \$Dn = floor(\$number / 10);       /* Tens (deca) */     \$n = \$number % 10;               /* Ones */     \$res = "";     if (\$Gn)     {         \$res .= convert_number(\$Gn) . " Million";     }     if (\$kn)     {         \$res .= (empty(\$res) ? "" : " ") .             convert_number(\$kn) . " Thousand";     }     if (\$Hn)     {         \$res .= (empty(\$res) ? "" : " ") .             convert_number(\$Hn) . " Hundred";     }     \$ones = array("", "One", "Two", "Three", "Four", "Five", "Six",         "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", "Thirteen",         "Fourteen", "Fifteen", "Sixteen", "Seventeen", "Eightteen",         "Nineteen");     \$tens = array("", "", "Twenty", "Thirty", "Fourty", "Fifty", "Sixty",         "Seventy", "Eigthy", "Ninety");     if (\$Dn || \$n)     {         if (!empty(\$res))         {             \$res .= " and ";         }         if (\$Dn < 2)         {             \$res .= \$ones[\$Dn * 10 + \$n];         }         else         {             \$res .= \$tens[\$Dn];             if (\$n)             {                 \$res .= "-" . \$ones[\$n];             }         }     }     if (empty(\$res))     {         \$res = "zero";     }     return \$res; } \$cheque_amt = 8747484 ; try    {    echo convert_number(\$cheque_amt);    }catch(Exception \$e)    {    echo \$e->getMessage();    }?> ```