Num To Word

Num To Word berfungsi untuk mengubah angka menjadi huruf atau terbilang dengan menggunakan Bahasa Indonesia dengan batasan sampai satuan milyar

Hasil :

15 => lima belas
30 => tiga puluh
100 => seratus
1500 => seribu lima ratus

Script :

function num_to_word($n) {
   $dasar = array(1 => 'satu', 'dua', 'tiga', 'empat', 'lima', 'enam','tujuh', 'delapan', 'sembilan');
   $angka = array(1000000000, 1000000, 1000, 100, 10, 1);
   $satuan = array('milyar', 'juta', 'ribu', 'ratus', 'puluh', '');
   $str = "";

   $i = 0;
   if($n==0){
      $str = "nol";
   }else{
      while ($n != 0) {
        $count = (int)($n/$angka[$i]);
     if ($count >= 10) {
        $str .= num_to_word($count). " ".$satuan[$i]." ";
     }else if($count > 0 && $count < 10){
        $str .= $dasar[$count] . " ".$satuan[$i]." ";
     }
     $n -= $angka[$i] * $count;
     $i++;
      }
      $str = preg_replace("/satu puluh (\w+)/i", "\\1 belas", $str);
      $str = preg_replace("/satu (ribu|ratus|puluh|belas)/i", "se\\1", $str);
   }
   return ucwords($str);
 }

Contoh Penggunaan :

echo num_to_word(15); //output lima belas
echo num_to_word(30); //output tiga puluh
echo num_to_word(100); //output seratus
echo num_to_word(1500); //output seribu lima ratus
Parameter Deskripsi
$num Angka dengan tipe data integer atau string (dengan catatan tidak mengandung karakter lain selain angka)