Monthly Archives: June 2013

[Share] Membuat sebuah fungsi untuk konversi angka – terbilang

Beberapa hari lalu, seorang teman tepatnya adek kelas bertanya, bagaimana cara membuat sebuah fungsi yang bisa menterjemahkan dari angka ke teks menggunakan PHP – Framework Code Igniter.

Sekilas, langsung muncul sebuah kata “rekursif” di otak entah bagian kanan atau kiri.. 😀

function terbilang($x)
{
	$bil = array("", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas");
	if ($x < 12)
		return " " . $bil[$x];
	elseif ($x < 20) 
		return $this->terbilang($x - 10) . "belas";
	elseif ($x < 100) 	
		return $this->terbilang($x / 10) . " puluh" . $this->terbilang($x % 10);
	elseif ($x < 200) 	
		return " seratus" . $this->terbilang($x - 100);
	elseif ($x < 1000) 	
		return $this->terbilang($x / 100) . " ratus" . $this->terbilang($x % 100);
	elseif ($x < 2000) 	
		return " seribu" . $this->terbilang($x - 1000);
	elseif ($x < 1000000) 
		return $this->terbilang($x / 1000) . " ribu" . $this->terbilang($x % 1000);
	elseif ($x < 1000000000) 	
		return $this->terbilang($x / 1000000) . " juta" . $this->terbilang($x % 1000000);
}