Nah, di postingan kali ini saya akan berbagi sebuah kode sederhana. Yaitu sebuah helper untuk framework CodeIgniter, isinya tentang fungsi terbilang. Memang sih sudah banyak yang membagikannya di luar sana. Kebetulan kemarin ada seorang teman yang bertanya untuk fungsi terbilang dengan angka di belakang koma di CodeIgniter, jadi sekalian saja saya posting di kategori
Code Snippet ini. Yaw hitung-hitung sebagai catatan pribadi jika nanti saya lupa. Dulu saya pernah membuat fungsi terbilang, sebelum berkenalan dengan CI. Jadi sekarang saya hanya tinggal membuatkan helper untuk menyimpan fungsi terbilang tersebut. Source code-nya kira-kira seperti di bawah ini :
1 | <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); |
13 | if ( ! function_exists('number_to_words')) |
15 | function number_to_words($number) |
17 | $before_comma = trim(to_word($number)); |
18 | $after_comma = trim(comma($number)); |
19 | return ucwords($results = $before_comma.' koma '.$after_comma); |
22 | function to_word($number) |
41 | $words = " ".$arr_number[$number]; |
45 | $words = to_word($number-10)." belas"; |
49 | $words = to_word($number/10)." puluh ".to_word($number%10); |
53 | $words = "seratus ".to_word($number-100); |
57 | $words = to_word($number/100)." ratus ".to_word($number%100); |
61 | $words = "seribu ".to_word($number-1000); |
63 | else if($number<1000000) |
65 | $words = to_word($number/1000)." ribu ".to_word($number%1000); |
67 | else if($number<1000000000) |
69 | $words = to_word($number/1000000)." juta ".to_word($number%1000000); |
78 | function comma($number) |
80 | $after_comma = stristr($number,','); |
94 | $length = strlen($after_comma); |
98 | $get = substr($after_comma,$i,1); |
99 | $results .= " ".$arr_number[$get]; |
Cara pemakaiannya sama dengan helper yang lainnya. Dengan memanggil helper tersebut di Controller atau secara otomatis dipanggil dengan menambahkannya di konfigurasi autoload.php.
1 | <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); |
3 | class web extends CI_Controller { |
7 | $this->load->helper("terbilang"); |
8 | echo ucwords(number_to_words("87,5")); |
Hasilnya akan menjadi Delapan Puluh Tujuh Koma Lima. Fungsi terbilang ini banyak dipakai untuk aplikasi akuntasi yang biasanya menghasilkan laporan berupa kuitansi dan disana ada kolom berapa nominalnya dalam bentuk huruf.
Sumber;
http://gedelumbung.com