Membuat fungsi angka terbilang di PHP

Pernahkah anda mendapatkan project dengan pengolahan angkam seperti banking, bmt , koperasi dll? 

nah pastinya membutuhkan fungsi terbilang  untuk menerjemahkan angka menjadi sebuah kalimat , contohnya 

Rp. 2.000.000 : DUA JUTA RUPIAH
Rp. 1.500.500 : SATU JUTA LIMA RATUS  RIBU LIMA RATUS RUPIAH

nah untuk membuatnya sangat mudah , silahkan copas kode dibawah ini


 
if ( ! function_exists('terbilang'))
{
	function terbilang($number)
	{
		$before_comma = trim(to_word($number));
		$after_comma = trim(comma($number));
		return ucwords($results = $before_comma .' Rupiah');
	}

	function to_word($number)
	{
		$words = "";
		$arr_number = array(
		"",
		"satu",
		"dua",
		"tiga",
		"empat",    
		"lima",
		"enam",
		"tujuh",
		"delapan",
		"sembilan",
		"sepuluh",
		"sebelas");

		if($number<12)
		{
			$words = " ".$arr_number[$number];
		}
		else if($number<20)
		{
			$words = to_word($number-10)." belas";
		}
		else if($number<100)
		{
			$words = to_word($number/10)." puluh ".to_word($number%10);
		}
		else if($number<200)
		{
			$words = "seratus ".to_word($number-100);
		}
		else if($number<1000)
		{
			$words = to_word($number/100)." ratus ".to_word($number%100);
		}
		else if($number<2000)
		{
			$words = "seribu ".to_word($number-1000);
		}
		else if($number<1000000)
		{
			$words = to_word($number/1000)." ribu ".to_word($number%1000);
		}
		else if($number<1000000000)
		{
			$words = to_word($number/1000000)." juta ".to_word($number%1000000);
		}
		else
		{
			$words = "undefined";
		}
		return $words;
	}

	function comma($number)
	{
		$after_comma = stristr($number,',');
		$arr_number = array(
		"nol",
		"satu",
		"dua",
		"tiga",
		"empat",
		"lima",
		"enam",
		"tujuh",
		"delapan",
		"sembilan");

		$results = "";
		$length = strlen($after_comma);
		$i = 1;
		while($i<$length)
		{
			$get = substr($after_comma,$i,1);
			$results .= " ".$arr_number[$get];
			$i++;
		}
		return $results;
	}
}
Untuk cara penggunaannya silhakkan panggil fungsinya saja :
 echo terbilang(1000000) 
// hasil SATU JUTA RUPIAH

Comments