Nusansifor

Nusantara Sistem Informasi

Terbilang ejaan angka kedalam bentuk kalimat

Berikut adalah script php konversi dari angka kedalam bentuk kalimat.

<?php
/*
*
* Class : Terbilang
* Spell quantity numbers in Indonesian or Malay Language
*
*
* author: huda m elmatsani
* 21 September 2004
* freeware
*
* example:
* $bilangan = new Terbilang;
* echo $bilangan -> eja(137);
* result: seratus tiga puluh tujuh
*
*
*/
Class Terbilang {
	function terbilang() {
		$this->dasar = array(1=>'satu','dua','tiga','empat','lima','enam','tujuh','delapan','sembilan');
		$this->angka = array(1000000000,1000000,1000,100,10,1);
		$this->satuan = array('milyar','juta','ribu','ratus','puluh','');
	}
	function eja($n) {
		$i=0;
		while($n!=0){
			$count = (int)($n/$this->angka[$i]);
			if($count>=10) $str .= $this->eja($count). " ".$this->satuan[$i]." ";
			else if($count > 0 && $count < 10)
			$str .= $this->dasar[$count] . " ".$this->satuan[$i]." ";
			$n -= $this->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 $str;
	}
}
?>

Penggunaan:

$bilangan = new Terbilang;
echo $bilangan -> eja(137); //akan menghasilkan: seratus tiga puluh tujuh

Alternatif lain, yg fungsinya sama:

http://www.nusansifor.com/2008/11/fungsi-angka-menjadi-tulisan-huruf/

sumber: http://www.phpclasses.org/browse/package/1915.html

semoga bermanfaat :mrgreen:

p5rn7vb

,

14 Comments

  • eddy says:

    Using Mozilla Firefox Mozilla Firefox 3.0.8 on Windows Windows XP

    wah sangat bermanfaat nih ilmu nya,,
    mas eddy mau nanyak gimana sih cara bikin vote seperti yang ada di web mas ini,??

    apakah menggunakan php juga??

    dan apakah menggunakan databases juga mas??

    tolong ya mas eddy butuh kali untuk referensi tugas akhir,,

    klu bisa eddy minta dong scrip nya yg bahsa php dan konek ke databases:D

    Thumb up 0 Thumb down 0

  • Jawaad says:

    Using Mozilla Firefox Mozilla Firefox 3.0.8 on Windows Windows XP

    untuk yg vote seperti di web ini menggunakan Plugin WordPress.
    Dan bisa di download di http://lesterchan.net/wordpress/downloads/
    Nama Plugin nya Wp-Polls.
    Dan menggunakan WordPress, bisa di download di http://www.wordpress.org/
    Dan jg menggunakan database.

    Thumb up 0 Thumb down 0

  • eddy says:

    Using Mozilla Firefox Mozilla Firefox 3.0.8 on Windows Windows XP

    klu buat ditanam di sebuah web yang sedang garap gimana mas caranya, tolong ya mas, :D eddy lagi buat proyek akhir menggunakan bahasa PHP

    Thumb up 0 Thumb down 0

  • Adi says:

    Using Opera Opera 9.63 on Windows Windows Vista

    kapan mau dinaikin ke trilyun mas? soalnya kan gak ada seribu milyar :)
    any way,,, sangat bermanfaat,,, salut.

    hatur nuhun

    Thumb up 0 Thumb down 0

  • Jawaad says:

    Using Mozilla Firefox Mozilla Firefox 3.0.11 on Windows Windows XP

    @Adi, kalau mau ditambahkan sampai trilyun, silahkan dimodif class nya.
    Dibagian ini:

    		$this->angka = array(1000000000000,1000000000,1000000,1000,100,10,1);
    		$this->satuan = array('triliun','milyar','juta','ribu','ratus','puluh','');

    terimakasih atas komentarnya :mrgreen:

    Thumb up 0 Thumb down 0

  • Andi says:

    Using Mozilla Firefox Mozilla Firefox 3.0.6 on Windows Windows Vista

    kalo mau ditambahkan separator koma gimana?
    misal: 45,67 = EMPAT PULUH LIMA KOMA EMAM PULUH TUJUH
    thanks

    Thumb up 0 Thumb down 0

  • Jawaad says:

    Using Mozilla Firefox Mozilla Firefox 3.5.2 on Windows Windows XP

    Andi,
    Kalau mau pakai koma bisa saja dengan logika explode, spt ini:

    $angka = "45,67";
    $angka_arr = explode("," $angka);
    $bilangan = new Terbilang;
    echo $bilangan -> eja($angka_arr[0]);
    echo " KOMA ";
    echo $bilangan -> eja($angka_arr[1]);

    blm dicoba, tapi logikaya spt itu.. silahkan dicoba.

    Thumb up 0 Thumb down 0

  • Adi Suwarso says:

    Using Opera Opera 9.63 on Windows Windows Vista

    Mas, sebetulnya lebih efektif dan lebih bagus yang mana antara penggunaan class dengan function biasa?
    soalnya dengan class saya berkesan ‘oon’ :) sedangkan dengan function tinggal panggil “echo terbilang(‘1000′)”…
    maaf pertanyaannya aneh
    terima kasih

    Thumb up 0 Thumb down 0


  • Using WordPress WordPress 2.6.5

    [...] Keterangan: Untuk berbasis simpel class, silahkan lihat artikel berikut terbilang-ejaan-angka-kedalam-bentuk-kalimat [...]

    Thumb up 0 Thumb down 0

  • ojie permana says:

    Using Mozilla Firefox Mozilla Firefox 3.6 on Windows Windows 7

    oke mas…thanks classnya bagus….

    Thumb up 0 Thumb down 0

  • ratih says:

    Using Mozilla Firefox Mozilla Firefox 3.0.19 on Windows Windows Vista

    mas,,qo saya ga bsa yaa pakenya??sya mash blajar mas, ,tolong pencerahannya, ,lewat email juga gpp, ,makasihh, ,

    Thumb up 0 Thumb down 0

  • Jawaad says:

    Using Mozilla Firefox Mozilla Firefox 3.6.8 on Windows Windows XP

    @Adi Suwarso, dengan menggunakan class script kita menjadi lebih rapih dan mudah untuk di maintenance :)

    @ojie permana, sama-sama, semoga bermanfaat.

    @ratih, tidak bisa bagaimana? mencobanya dimana? hostingan atau di local?

    Thumb up 0 Thumb down 0

  • wawan says:

    Using Google Chrome Google Chrome 23.0.1271.91 on Windows Windows XP

    mas,, saya mau tanya..
    scriptnya udah saya coba dan berhasil tp ada pesan error seperti ini :

    “Notice: Undefined variable: str in H:\Program Files\xampp\htdocs\Raport-Online\class.terbilang.php on line 31″

    kira2 gmn ya cara ngatasinnya ?

    Thumb up 0 Thumb down 0

  • johny says:

    Using Google Chrome Google Chrome 24.0.1312.56 on Windows Windows 7

    Makasih mas valuable banget scriptnya

    Thumb up 0 Thumb down 0

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Notify me of followup comments via e-mail. You can also subscribe without commenting.