Advertisement
masardee

PHP Function Integer To Alphabet (Indonesia Version)

Jun 23rd, 2011
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.92 KB | None | 0 0
  1. /**
  2.  * Integer To Alphabet
  3.  * to convert decimal variable to alphabet string
  4.  *
  5.  * @author      Ardi Imawan (ardiimawan@gmail.com)
  6.  * @param       $number int
  7.  * @param       $se boolean
  8.  * @return      string
  9.  **/
  10. public function _integer_to_alphabet($number, $se = false)
  11. {
  12.     if($number == 0) return "NOL";
  13.    
  14.     $alphabet = "";
  15.     $satuan = array(
  16.         (object)array('digit' => 12, 'alphabet' => 'TRILIUN'),
  17.         (object)array('digit' => 9, 'alphabet' => 'MILYAR'),
  18.         (object)array('digit' => 6, 'alphabet' => 'JUTA'),
  19.         (object)array('digit' => 3, 'alphabet' => 'RIBU'),
  20.         (object)array('digit' => 2, 'alphabet' => 'RATUS')
  21.     ); 
  22.    
  23.     if(strlen($number) > 2)
  24.     {
  25.         foreach($satuan as $row)
  26.         {      
  27.             // triliun
  28.             if(strlen($number) > $row->digit)
  29.             {
  30.                 $_int_temp = (int)substr($number, 0, $row->digit*-1);
  31.                 $alphabet .= $this->_integer_to_alphabet($_int_temp, $row->digit == 3  && $_int_temp == 1 || $row->digit == 2) . "$row->alphabet ";
  32.                 $number = ((int)substr($number, $row->digit*-1))."";
  33.             }
  34.         }
  35.     }
  36.    
  37.     // puluhan
  38.     if(strlen($number) > 1)
  39.     {
  40.         $_int_temp = (int)substr($number, 0, -1);
  41.         if($_int_temp == 1 && (int)substr($number, -1) > 0)
  42.         {
  43.             $number = (int)substr($number, -1);
  44.             $alphabet .= $this->_integer_to_alphabet($number, true) . "BELAS ";
  45.             $number = "";
  46.         }
  47.         else
  48.         {
  49.             $alphabet .= $this->_integer_to_alphabet($_int_temp, $_int_temp == 1) . "PULUH ";
  50.             $number = (int)substr($number, -1);
  51.         }
  52.        
  53.     }
  54.     // satuan      
  55.     if($se && $number == 1) $alphabet .= "SE";
  56.     else if($number == 1) $alphabet .= "SATU ";
  57.     else if($number == 2) $alphabet .= "DUA ";
  58.     else if($number == 3) $alphabet .= "TIGA ";
  59.     else if($number == 4) $alphabet .= "EMPAT ";
  60.     else if($number == 5) $alphabet .= "LIMA ";
  61.     else if($number == 6) $alphabet .= "ENAM ";
  62.     else if($number == 7) $alphabet .= "TUJUH ";
  63.     else if($number == 8) $alphabet .= "DELAPAN ";
  64.     else if($number == 9) $alphabet .= "SEMBILAN ";
  65.    
  66.     return $alphabet;
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement