Tagged Under:

Konversi Angka Mata Uang Menjadi Tulisan Dengan PHP

Share





Assalamu'alaikum

Konversi angka menjadi kalimat dalam mata uang biasanya lumrah digunakan pada kwitansi pembayaran, menerangkan berapa nominal angka dalam kalimat.
Berikut adalah script mengkonversi angka mata uang menjadi kalimat dengan menggunakan class, cek this out !

Class Konversi {
    function konversi() {
        $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;
    }
}

save file diatas dengan nama : classkonversi.php. setelah itu buat script indexnya sebagai berikut :

<?php
require "classkonversi.php";
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<SCRIPT LANGUAGE="JavaScript">
function setFocus() {
        document.form1.data.select();
        document.form1.data.focus();
    }
</script>
<title>Konversi</title>
</head>
<body onload="javascript:setFocus()">
<form id="form1" name="form1" method="post" action="">
  <input type="text" name="data" />
  <input type="submit" name="Submit" value="Convert" />
</form>
<?php
$data = $_POST['data'];
$bilangan = new Konversi;
echo $bilangan -> eja($data)."RUPIAH";
?>
</body>
</html>

save dengan nama index.php, dan selamat mencoba semoga bermanfaat . untuk lebih jelasnya bisa di didownload disini :
DOWNLOAD

5 comments:

  1. terima kasih. semoga bermanfaat..

    ReplyDelete
  2. Maaf ada bug untuk contoh kasus:
    60,900,000 (enam puluh juta sembilan ratus ribu)

    ReplyDelete
  3. Casino, Hotels & Resorts | San Diego County
    Casino is 토토 먹튀 your Central City casino destination with everything from slots to 검증 사이트 video poker to blackjack, live table games. Our new location in 인터넷바카라 San 꽁머니토토 Diego bitcasino County

    ReplyDelete