Dalam membuat aplikasi kwitansi kita perlu menerjemahkan angka bilangan, sebagai contoh : Rp 2.000.000 diubah ke ‘Dua juta rupiah’. Berikut akan dijelaskan pengubahan dari angka ke text dalam program PHP
- Pembuatan fungsi untuk tingkat satuan
Tingkat satuan yang dimaksud adalah 3 digit mulai dari 000 – 999.
Fungsi ini adalah:function rp_satuan($angka,$debug)
{
$a_str[‘1’]=”satu”;
$a_str[‘2’]=”dua”;
$a_str[‘3’]=”tiga”;
$a_str[‘4’]=”empat”;
$a_str[‘5’]=”lima”;
$a_str[‘6’]=”enam”;
$a_str[‘7’]=”tujuh”;
$a_str[‘8’]=”delapan”;
$a_str[‘9’]=”sembilan”;
$panjang=strlen($angka);
for ($b=0;$b<$panjang;$b++)
{
$a_bil[$b]=substr($angka,$panjang-$b-1,1);
}
if ($panjang>2)
{
if ($a_bil[2]==”1″)
{
$terbilang=” seratus”;
}
else if ($a_bil[2]!=”0″)
{
$terbilang= ” “.$a_str[$a_bil[2]]. ” ratus”;
}
}if ($panjang>1)
{
if ($a_bil[1]==”1″)
{
if ($a_bil[0]==”0″)
{
$terbilang .=” sepuluh”;
}
else if ($a_bil[0]==”1″)
{
$terbilang .=” sebelas”;
}
else
{
$terbilang .=” “.$a_str[$a_bil[0]].” belas”;
}
return $terbilang;
}
else if ($a_bil[1]!=”0″)
{
$terbilang .=” “.$a_str[$a_bil[1]].” puluh”;
}
}
if ($a_bil[0]!=”0″)
{
$terbilang .=” “.$a_str[$a_bil[0]];
}
return $terbilang;
} - Pengelompokan dalam ribuan, jutaan dan milyar
Kita tahu bahwa uang dibagi tiap 3 digit dalam ribuan, jutaan dan milyar.
Fungsinya adalah sebagai berikut :function rp_terbilang($angka,$debug)
{
$angka = str_replace(“.”,”,”,$angka);
list ($angka, $desimal) = explode(“,”,$angka);
$panjang=strlen($angka);
for ($b=0;$b<$panjang;$b++)
{
$myindex=$panjang-$b-1;
$a_bil[$b]=substr($angka,$myindex,1);
}
if ($panjang>9)
{
$bil=$a_bil[9];
if ($panjang>10)
{
$bil=$a_bil[10].$bil;
}if ($panjang>11)
{
$bil=$a_bil[11].$bil;
}
if ($bil!=”” && $bil!=”000″)
{
$terbilang .= rp_satuan($bil,$debug).” milyar”;
}
}if ($panjang>6)
{
$bil=$a_bil[6];
if ($panjang>7)
{
$bil=$a_bil[7].$bil;
}if ($panjang>8)
{
$bil=$a_bil[8].$bil;
}
if ($bil!=”” && $bil!=”000″)
{
$terbilang .= rp_satuan($bil,$debug).” juta”;
}
}
if ($panjang>3)
{
$bil=$a_bil[3];
if ($panjang>4)
{
$bil=$a_bil[4].$bil;
}if ($panjang>5)
{
$bil=$a_bil[5].$bil;
}
if ($bil!=”” && $bil!=”000″)
{
$terbilang .= rp_satuan($bil,$debug).” ribu”;
}
}$bil=$a_bil[0];
if ($panjang>1)
{
$bil=$a_bil[1].$bil;
}if ($panjang>2)
{
$bil=$a_bil[2].$bil;
}
//die($bil);
if ($bil!=”” && $bil!=”000″)
{
$terbilang .= rp_satuan($bil,$debug);
}
return trim($terbilang);
} - Contoh pemakaian
Jika kita menjalankan rp_terbilang(1000,0) maka hasilnya : seribu
Kunjungi www.proweb.co.id untuk menambah wawasan anda.