Advertisement
alchymyth

number to positions

Aug 11th, 2011
233
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.46 KB | None | 0 0
  1. /**
  2. *  Function:   convert_number
  3. *  source: http://www.phpro.org/examples/Convert-Numbers-to-Words.html
  4. *  Description:
  5. *  Converts a given integer (in range [0..99], inclusive) into
  6. *  alphabetical format ("first", "second", etc.)
  7. */
  8. function convert_number($number)
  9. {
  10.     if (($number < 0) || ($number > 99))
  11.     {
  12.     return 'overth'; break;
  13.     }
  14.  
  15.     $Dn = floor($number / 10);       /* Tens (deca) */
  16.     $n = $number % 10;               /* Ones */
  17.  
  18.     $res = "";
  19.  
  20.     $ones = array("", "first", "second", "third", "fourth", "fifth", "sixth",
  21.         "seventh", "eighth", "nineth", "tenth", "eleventh", "twelveth", "thirteenth",
  22.         "fourteenth", "fifteenth", "sixteenth", "seventeenth", "eightteenth",
  23.         "nineteenth");
  24.     $tens = array("", "", "twenty", "thirty", "fourty", "fifty", "sixty",
  25.         "seventy", "eigthy", "ninety");
  26.     $tenths = array("", "tenth", "twentieth", "thirtieth", "fourtieth", "fiftieth", "sixtieth",
  27.         "seventieth", "eigthierth", "ninetieth");
  28.  
  29.  
  30.     if ($Dn || $n)
  31.     {
  32.      
  33.         if ($Dn < 2)
  34.         {
  35.             $res .= $ones[$Dn * 10 + $n];
  36.         }
  37.         else
  38.         {
  39.             $res .= $tens[$Dn];
  40.  
  41.             if ($n)
  42.             {
  43.                 $res .= $ones[$n];
  44.             }
  45.         }
  46.     }
  47.    
  48.     if(10*$Dn == $number)
  49.     {
  50.         $res = $tenths[$Dn];
  51.     }
  52.    
  53.     if (empty($res))
  54.     {
  55.         $res = "none";
  56.     }
  57.  
  58.     return $res;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement