Advertisement
justhrun

terbilang.pehape

Jul 19th, 2014
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 7.30 KB | None | 0 0
  1. <?php
  2.  
  3. // $x = 1234567890.34;
  4. // echo number_format($x,2,',','.') ."<br>". Terbilang($x);
  5.  
  6. // Konversi Dari Numerik ke Verbal (Terbilang)
  7. function Terbilang($angka) {
  8.         $Value = round($angka,2) ;
  9.         $Nilai = round($angka,2) ;
  10.         $Hasil_r = $Hasil_p = $Hasil_b = $Hasil_s = "" ;
  11.         $Terb1 = $Terb2 = "" ;
  12.         $Terbilang = "" ;
  13.  
  14.         if($Value <= 0) {
  15.                 return($Terbilang) ;
  16.         } elseif ($Value > 2147483647.99) {
  17.                 $Terbilang = " Angka Melampaui Batas Maksimum 2.147.483.647,99 !!" ;
  18.                 return($Terbilang) ;
  19.         }
  20.  
  21.         // Milyar
  22.         $Milyar = floor($Value / 1000000000);
  23.         if($Milyar > 0) {
  24.                 $Hasil1 = Satuan($Milyar,'12345') ;
  25.                 $Terbilang = $Hasil1 . ' Milyar' ;
  26.         }
  27.  
  28.         // Jutaan
  29.         $Value = $Nilai % 1000000000 ;
  30.         $RtsJt = floor($Value / 100000000) ;
  31.         if($RtsJt > 0) {
  32.                 $Terbilang = $Terbilang . Ratusan($RtsJt) ;
  33.         }
  34.  
  35.         $Value = $Nilai % 100000000 ;
  36.         $Jutaan = floor($Value / 1000000) ;
  37.         if($Jutaan == 10 || $Jutaan >= 20 ) {
  38.                 $Juta = floor($Value / 10000000) ;
  39.                 $Hasil1 = Puluhan($Juta) ;
  40.                 $Hasil2 = "";
  41.                 if($Jutaan > 20 && ($Jutaan % 10) != 0 ) {
  42.                         $Hasil2 = Satuan($Jutaan % 10,$Nilai) ;
  43.                 }
  44.                 $Terbilang = $Terbilang . $Hasil1 . $Hasil2 ;
  45.  
  46.         } elseif ( $Jutaan > 10 && $Jutaan < 20 ) {
  47.                 $Belasan = $Jutaan % 10 ;
  48.                 $Hasil1 = Belasan($Belasan) ;
  49.                 $Terbilang = $Terbilang . $Hasil1 ;
  50.  
  51.         } elseif ( $Jutaan > 0 ) {
  52.                 $Hasil1 = Satuan($Jutaan, $Nilai) ;
  53.                 $Terbilang = $Terbilang . $Hasil1 ;
  54.         }
  55.  
  56.         if( $Value >= 1000000 ) {
  57.                 $Terbilang = $Terbilang . ' Juta' ;
  58.         }
  59.  
  60.         // Ribuan
  61.         $Value = $Nilai % 1000000 ;
  62.         if( $Value >= 100000 ) {
  63.                 $Ratusan = floor($Value / 100000) ;
  64.                 $Hasil1 = Ratusan($Ratusan) ;
  65.                 $Terbilang = $Terbilang . $Hasil1 ;
  66.         }
  67.  
  68.         $Value = $Nilai % 100000 ;
  69.         $Ribuan = floor($Value / 1000) ;
  70.         if( $Ribuan == 10 || $Ribuan >= 20 ) {
  71.                 $Puluhan = floor($Value / 10000) ;
  72.                 $Hasil1 = Puluhan($Puluhan) ;
  73.                 $Terbilang = $Terbilang . $Hasil1 ;
  74.  
  75.         } elseif ( $Ribuan > 10 && $Ribuan < 20 ) {
  76.                 $Belasan = $Ribuan % 10 ;
  77.                 $Hasil1 = Belasan($Belasan) ;
  78.                 $Terbilang = $Terbilang . $Hasil1 ;
  79.         }
  80.  
  81.         $Sisa = $Ribuan % 10 ;
  82.         if( ($Ribuan > 20 || ( $Ribuan > 0  && $Ribuan < 11 )) && $Sisa != 0  ) {
  83.                 $Hasil1 = Satuan($Sisa, $Nilai) ;
  84.                 $Terbilang = $Terbilang . $Hasil1 ;
  85.         }
  86.  
  87.         $Bulat = floor(( $Nilai % 1000000 ) / 1000) ;
  88.         if( $Bulat > 0 ) {
  89.                 if( $Terbilang == ' Se' ) {
  90.             $Terbilang = $Terbilang . 'ribu' ;
  91.                 } else {
  92.                         $Terbilang = $Terbilang . ' Ribu' ;
  93.                 }
  94.         }
  95.  
  96.         $Value = $Nilai % 1000 ;
  97.         if( $Value >= 100 ) {
  98.                 $Ratusan = floor($Value / 100) ;
  99.                 $Hasil1 = Ratusan($Ratusan) ;
  100.                 $Terbilang = $Terbilang . $Hasil1 ;
  101.         }
  102.  
  103.         $Value = $Nilai % 100 ;
  104.         if( $Value == 10 || $Value >= 20 ) {
  105.                 $Puluhan = floor($Value / 10) ;
  106.                 $Hasil1 = Puluhan($Puluhan) ;
  107.                 $Terbilang = $Terbilang . $Hasil1 ;
  108.  
  109.         } elseif ( $Value > 10 && $Value < 20 ) {
  110.                 $Belasan = $Value % 10 ;
  111.                 $Hasil1 = Belasan($Belasan) ;
  112.                 $Terbilang = $Terbilang . $Hasil1 ;
  113.         }
  114.  
  115.         $Sisa = $Value % 10 ;
  116.         if( ( $Value > 20 || ( $Value > 0 && $Value < 11)) && $Sisa != 0 ) {
  117.                 $Hasil1 = Satuan($Sisa, $Nilai) ;
  118.                 $Terbilang = $Terbilang . $Hasil1 ;
  119.         }
  120. //      $Terbilang = $Terbilang . ' Rupiah ' ;
  121.  
  122.  
  123. // ====================
  124.         // Decimal
  125.         $Value = ($Nilai - floor($Nilai))*100 ;
  126.         $Value = (int) round($Value,0) ;
  127.         if( $Value != 0 ) {
  128.                 if( $Value == 10 || $Value >= 20 ) {
  129.                         $Puluhan = floor($Value / 10) ;
  130.                         $Hasil1 = Puluhan($Puluhan) ;
  131.                         $Deci = $Hasil1 ;
  132.         } elseif ( $Value > 10 && $Value < 20 ) {
  133.                         $Belasan = $Value % 10 ;
  134.                         $Hasil1 = Belasan($Belasan) ;
  135.                         $Deci = $Hasil1 ;
  136.                 }
  137.                 $Sisa = $Value % 10 ;
  138.                 if( ( $Value > 20 || ( $Value > 0 && $Value < 11)) && $Sisa != 0 ) {
  139.                         $Hasil1 = Satuan($Sisa, $Nilai) ;
  140.                         $Deci = $Deci . $Hasil1 ;
  141.                 }
  142.                 $Deci .= ' Sen' ;
  143.                 $Terbilang .= $Deci ;
  144.         }
  145. // ====================
  146.         return $Terbilang;
  147.  
  148. }
  149.  
  150.  
  151. function Ratusan($p) {
  152.     switch ($p) {
  153.          case 1: $Hasil_r = ' Seratus'; break;
  154.          case 2: $Hasil_r = ' Duaratus'; break;
  155.          case 3: $Hasil_r = ' Tigaratus'; break;
  156.          case 4: $Hasil_r = ' Empatratus'; break;
  157.          case 5: $Hasil_r = ' Limaratus'; break;
  158.          case 6: $Hasil_r = ' Enamratus'; break;
  159.          case 7: $Hasil_r = ' Tujuhratus'; break;
  160.          case 8: $Hasil_r = ' Delapanratus'; break;
  161.          default: $Hasil_r = ' Sembilanratus';
  162.         }
  163.         return $Hasil_r;
  164. }
  165.  
  166. function Puluhan($p) {
  167.         switch ($p) {
  168.          case 1: $Hasil_p = ' Sepuluh'; break;
  169.          case 2: $Hasil_p = ' Duapuluh'; break;
  170.          case 3: $Hasil_p = ' Tigapuluh'; break;
  171.          case 4: $Hasil_p = ' Empatpuluh'; break;
  172.          case 5: $Hasil_p = ' Limapuluh'; break;
  173.          case 6: $Hasil_p = ' Enampuluh'; break;
  174.          case 7: $Hasil_p = ' Tujuhpuluh'; break;
  175.          case 8: $Hasil_p = ' Delapanpuluh'; break;
  176.          default: $Hasil_p = ' Sembilanpuluh';
  177.         }
  178.         return $Hasil_p;
  179. }
  180.  
  181. function Belasan($p) {
  182.         switch ($p) {
  183.          case 1: $Hasil_b = ' Sebelas'; break;
  184.          case 2: $Hasil_b = ' Duabelas'; break;
  185.          case 3: $Hasil_b = ' Tigabelas'; break;
  186.          case 4: $Hasil_b = ' Empatbelas'; break;
  187.          case 5: $Hasil_b = ' Limabelas'; break;
  188.          case 6: $Hasil_b = ' Enambelas'; break;
  189.          case 7: $Hasil_b = ' Tujuhbelas'; break;
  190.          case 8: $Hasil_b = ' Delapanbelas'; break;
  191.          default: $Hasil_b = ' Sembilanbelas';
  192.         }
  193.         return $Hasil_b;
  194. }
  195.  
  196. function Satuan($p,$xx) {
  197.         switch ($p) {
  198.          case 1: $XSisa = floor( ($xx % 1000000) / 1000 ) ;
  199.                  if ( $XSisa == 1 && $xx < 2000 ) {
  200.                     $Hasil_s = ' Se' ;
  201.                  } else {
  202.                     $Hasil_s = ' Satu' ;
  203.                  }
  204.                  break;
  205.          case 2: $Hasil_s = ' Dua'; break;
  206.          case 3: $Hasil_s = ' Tiga'; break;
  207.          case 4: $Hasil_s = ' Empat'; break;
  208.          case 5: $Hasil_s = ' Lima'; break;
  209.          case 6: $Hasil_s = ' Enam'; break;
  210.          case 7: $Hasil_s = ' Tujuh'; break;
  211.          case 8: $Hasil_s = ' Delapan'; break;
  212.          default: $Hasil_s = ' Sembilan';
  213.         }
  214.         return $Hasil_s;
  215. }
  216. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement