Kamis, 20 Januari 2011

Date dab Konversi Bulan

Oleh : MeltDown
Ditulis pada : 15-January-11
PHPKarena memang PHP bukan ciptaan orang Indonesia (ini alasan akal-akalan), maka penamaan bulannya pun pastinya akan berbahasa inggris. Tentu anda pernah berkeinginan untuk merubahnya bukan ? Nah, metode konversi ini berlaku untuk semua jenis preview bulan yang anda dapatkan dari kode defalult. Sebelum memulai konvers, berikut ini saya jelaskan dulu preview bulan yang didapatkan dengan fungsi date():


  1. date("m") akan menghasilkan nama bulan dalam bentuk angka dengan mengikutsertakan nol, contoh : 01 untuk January
  2. date("n") akan menghasilkan nama bulan dalam bentuk angka dengan tanpa mengikutsertakan nol, contoh : untuk January
  3. date("F") akan menghasilkan nama bulan dalam bentuk abjad lengkap dengan bahasa inggris, contoh : January
  4. date("M") akan menghasilkan nama bulan dalam bentuk abjad tiga huruf contoh :Jan untuk January
Selanjutnya, anda harus menentukan akan menggunakan metode mana dalam hal menampilkan bulan pada aplikasi anda. Setelah itu buatlah function seperti ini :
nama file : konversibulan.php.

functon bulanindonesia($stringbulan)
{
$bulan_angka=array('01','02','03','04','05','06','07','08','09','10','11','12');
$bulankite=array('Januari','Februari','Maret','April','Mei','Juni','Juli','Agustus',
                  'September','Oktober','November','Desember');
$konversi=str_ireplace($bulan_angka,$bulankite,$stringbulan);
return $konversi;
}

function tersebut  digunakan jika string bulan anda berupa angka yang mengikutsertakan nol, yang menggunakan date("m"). Berikut ini adalah contoh penggunaannya :
require "konversibulan.php";
$stringbulan=date("m");
$bulan=bulanindonesia($stringbulan);
echo $bulan;

PENGGUNAAN DALAM DATABASE
Jika field dalam tabel database anda menggunakan format date dengan bentuk default-nya0000-00-00 (tahun-bulan-tanggal), maka anda harus mengambil bulannya saja (tengah) dengan cara (misalnya) sebagai berikut :
$getdata=mysql_query("select tanggal from nama_tabel where anu='$anu'");
$data=mysql_fetch_array($getdata);
$getbulan=explode("-",$data[tanggal]);
$stringbulan=$getbulan[1];
$bulan=bulanindonesia($stringbulan);
echo $bulan;
Ket :
$stringbulan pada contoh tersebut mengambil dari nilai array $getbulan, yang merupakan hasil dari pemecahan Explode berdasarkan karakter "-",  dimana urutan [1]adalah urutan kedua dalam array.

Mengenai Array ini, silakan baca di : Memahami Array Dan Implementasinya.
dan Mengenai Explode, silakan baca di : Penggunaan Explode Di PHP