Robson » Code » PHP » Number To Words

 
<?
   // numbers to words function v1.0
   
   // example: 547 -> five hundred and forty seven
   // works with 0 to 1000 inclusive
   function number_to_words($n)
   {
       $number = array(
           'zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven',
           'eight', 'nine', 'ten', 'eleven', 'twelve', 'thirteen', 'fourteen',
           'fifteen', 'sixteen', 'seventeen', 'eighteen', 'nineteen'
           );
           
       $tens = array(
           'zero', 'ten', 'twenty', 'thirty', 'forty', 'fifty',
           'sixty', 'seventy', 'eighty', 'ninety'
       );
 
       if (!$n)
           $output = 'zero';
       else if ($n == 1000)
           $output = 'one thousand';
       else
       {
           if ($n > 99 && $n < 1000)
           {
               $output = $number[intval($n/100)] . ' hundred';
               $n %= 100;
               if ($n)
                   $output .= ' and ';
           }
           if ($n >= 1 && $n <= 19)
               $output .= $number[$n];
           else if ($n)
           {
               $output .= $tens[intval($n/10)];
               if ($n % 10)
                   $output .= ' ' . $number[$n % 10];
           }
       }
       return $output;
   }
?>    
 
© 2004-17 robson | cc unless stated