Cara Convert Tanggal Database ke Format Indonesia dan Sebaliknya pada PHP dan Javascript – Hai ketemu lagi dengan saya dewan komputer dan pada kesempatan kali ini saya akan membahas tentang cara convert tanggal dari format database (yyyy-mm-dd) menjadi format tanggal Indonesia dengan nama bulan Indonesia. Caranya sangat mudah, pada contoh dibawah nanti saya akan membuat terlebih dahulu sebagai function atau dibuat menjadi suatu librari jadi sobat tinggal include filenya dan function dapat digunakan berkali-kali tinggal memanggil nama fungsinya saja dan jika ada perubahan maka sobat hanya tinggal mengubah pada fungsi yang ingin diubah dan otomatis semua yang menggunakan fungsi tersebut juga akan ikut berubah.
Cara Convert Tanggal Menggunakan PHP
Pertama akan saya berikan contoh convert tanggal dengan php. Berikut adalah caranya :
1. Convert Date (yyyy-mm-dd)
Format yang ada pada database adalah yyyy-mm-dd atau tahun-bulan-tanggal oleh karena itu kita perlu memisahkannya terlebih dahulu. langkah-langkahnya adalah :
a. Membuat file dengan nama lib.php dan buat funginya seperti dibawah
function convertDateDBtoIndo($string){ // contoh : 2019-01-30 $bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; $tanggal = explode("-", $string)[2]; $bulan = explode("-", $string)[1]; $tahun = explode("-", $string)[0]; return $tanggal . " " . $bulanIndo[abs($bulan)] . " " . $tahun; }
b. Pada file index.php kita include-kan file lib.php di paling atas seperti dibawah
<?php include 'lib.php'; ?>
c. Kemudian kita tambahkan nama librarinya pada tanggalnya seperti contoh
<b>Tanggal PHP (2019-01-30)</b><br> <?php echo convertDateDBtoIndo('2019-01-30'); ?>
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal PHP (2019-01-30)</b><br> <input type="text" class="form-control" value="<?php echo convertDateDBtoIndo('2019-01-30'); ?>">
dan akan menghasilkan tampilan seperti gambar
2. Convert Datetime (yyyy-mm-dd H:i:s)
Format yang ada pada database adalah yyyy-mm-dd h:i:s atau tahun-bulan-tanggal jam:menit:detik oleh karena itu kita perlu memisahkannya terlebih dahulu. langkah-langkahnya adalah :
a. Membuat file dengan nama lib.php dan buat funginya seperti dibawah
function convertDateTimeDBtoIndo($string){ // contoh : 2019-01-30 10:20:20 $bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; $date = explode(" ", $string)[0]; $time = explode(" ", $string)[1]; $tanggal = explode("-", $date)[2]; $bulan = explode("-", $date)[1]; $tahun = explode("-", $date)[0]; return $tanggal . " " . $bulanIndo[abs($bulan)] . " " . $tahun . " " . $time; }
b. Pada file index.php kita include-kan file lib.php di paling atas seperti dibawah
<?php include 'lib.php'; ?>
c. Kemudian kita tambahkan nama librarinya pada tanggalnya seperti contoh
<b>Tanggal & Waktu PHP (2019-01-30 10:30:36)</b><br> <?php echo convertDateTimeDBtoIndo('2019-01-30 10:30:36'); ?>
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal & Waktu PHP (2019-01-30 10:30:36)</b><br> <input type="text" class="form-control" value="<?php echo convertDateTimeDBtoIndo('2019-01-30 10:30:36'); ?>">
dan akan menghasilkan tampilan seperti gambar
3. Convert Date (17 Agustus 2019)
Selanjutnya adalah kebalikan dari contoh diatas yang mana ini guna untuk mengkonvert kembali ke dalam format database menggunakan PHP untuk menyimpan data agar bisa masuk ke dalam database. Berikut caranya :
a. Membuat file dengan nama lib.php dan buat funginya seperti dibawah
function convertDateIndotoDB($string){ // contoh : 17 Agustus 2019 $bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; $tanggal = explode(" ", $string)[0]; $bulan = sprintf('%02d', array_search(explode(" ", $string)[1], $bulanIndo)); $tahun = explode(" ", $string)[2]; return $tahun . "-" . $bulan . "-" . $tanggal; }
b. Pada file index.php kita include-kan file lib.php di paling atas seperti dibawah
<?php include 'lib.php'; ?>
c. Kemudian kita tambahkan nama librarinya pada tanggalnya seperti contoh
<b>Tanggal PHP (17 Agustus 2019)</b><br> <?php echo convertDateIndotoDB('17 Agustus 2019'); ?>
dan akan menghasilkan tampilan seperti dibawah
Atau
kita juga bisa meletakkannya pada input text seperti dibawah<b>Tanggal PHP (17 Agustus 2019)</b><br> <input type="text" class="form-control" value="<?php echo convertDateIndotoDB('17 Agustus 2019'); ?>">
dan akan menghasilkan tampilan seperti gambar
4. Convert Tanggal Indo ke Datetime PHP (17 Agustus 2019 10:20:20)
Pada contoh ini adalah mengubah tanggal dan waktu dalam format indonesia menjadi format datetime, caranya adalah sebagai berikut :
a. Membuat file dengan nama lib.php dan buat funginya seperti dibawah
function convertDateTimeIndotoDB($string){ // contoh : 17 Agustus 2019 10:20:20 $bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; $tanggal = explode(" ", $string)[0]; $bulan = sprintf('%02d', array_search(explode(" ", $string)[1], $bulanIndo)); $tahun = explode(" ", $string)[2]; $jam = explode(" ", $string)[3]; return $tahun . "-" . $bulan . "-" . $tanggal . " " . $jam; }
b. Pada file index.php kita include-kan file lib.php di paling atas seperti dibawah
<?php include 'lib.php'; ?>
c. Kemudian kita tambahkan nama librarinya pada tanggalnya seperti contoh
<b>Tanggal & Waktu PHP (17 Agustus 2019 10:30:36)</b><br> <?php echo convertDateTimeIndotoDB('17 Agustus 2019 10:30:36'); ?>
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal & Waktu PHP (17 Agustus 2019 10:20:20)</b><br> <input type="text" class="form-control" value="<?php echo convertDateTimeIndotoDB('17 Agustus 2019 10:20:20'); ?>">
dan akan menghasilkan tampilan seperti gambar
Cara Convert Tanggal Menggunakan Javascript
Pada contoh kedua ini saya akan mencontohkan menggunakan javascript. Pada dasarnya sama saja dengan php hanya ada sedikut perbedaan. Berikut adalah caranya :
1. Convert Date (yyyy-mm-dd)
Format yang ada pada database adalah yyyy-mm-dd atau tahun-bulan-tanggal oleh karena itu kita perlu memisahkannya terlebih dahulu. langkah-langkahnya adalah :
a. Membuat function pada tag <script>…</script> seperti dibawah
function convertDateDBtoIndo(string) { bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; tanggal = string.split("-")[2]; bulan = string.split("-")[1]; tahun = string.split("-")[0]; return tanggal + " " + bulanIndo[Math.abs(bulan)] + " " + tahun; }
b. . Kemudian kita buat HTML-nya seperti kode dibawah
<b>Tanggal PHP (2019-03-30)</b><br> <span id="tanggal"></span>
c. Setelah itu barulah kita tambahkan kode javascriptnya di dalam tag <script>…</script>
document.getElementById("tanggal").innerHTML = convertDateDBtoIndo("2019-03-30");
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal & Waktu Javascript (2019-03-30 12:30:03)</b><br> <input type="text" class="form-control" id="tanggalWaktuInput">
dan pada javascriptnya seperti dibawah
document.getElementById("tanggalInput").value = convertDateDBtoIndo("2019-03-30");
dan akan menghasilkan tampilan seperti gambar
2. Convert Datetime (yyyy-mm-dd H:i:s)
Format yang ada pada database adalah yyyy-mm-dd h:i:s atau tahun-bulan-tanggal jam:menit:detik oleh karena itu kita perlu memisahkannya terlebih dahulu. langkah-langkahnya adalah :
a. Membuat function pada tag <script>…</script> seperti dibawah
function convertDateTimeDBtoIndo(string) { bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; date = string.split(" ")[0]; time = string.split(" ")[1]; tanggal = date.split("-")[2]; bulan = date.split("-")[1]; tahun = date.split("-")[0]; return tanggal + " " + bulanIndo[Math.abs(bulan)] + " " + tahun + " " + time; }
b. Kemudian kita buat HTML-nya seperti kode dibawah
<b>Tanggal & Waktu Javascript (2019-03-30 12:30:03)</b><br> <span id="tanggalWaktu"></span>
c. Setelah itu barulah kita tambahkan kode javascriptnya di dalam tag <script>…</script>
document.getElementById("tanggalWaktu").innerHTML = convertDateTimeDBtoIndo("2019-03-30 12:30:03");
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal & Waktu Javascript (2019-03-30 12:30:03)</b><br> <input type="text" class="form-control" id="tanggalWaktuInput">
dan pada javascriptnya seperti dibawah
document.getElementById("tanggalWaktuInput").value = convertDateTimeDBtoIndo("2019-03-30 12:30:03");
dan akan menghasilkan tampilan seperti gambar
3. Convert Tanggal Indonesia ke format DB (17 Agustus 2019)
Kali ini adalah kebalikan dari contoh diatas, kita akan convert tanggal dari tanggal indonesia menjadi format tanggal database agar bisa disimpan ke database, berikut adalah caranya :
a. Membuat function pada tag <script>…</script> seperti dibawah
function convertDateIndotoDB(string) { bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; tanggal = string.split(" ")[0]; bulan = bulanIndo.indexOf(string.split(" ")[1]); if(parseInt(bulan) < 10){ bulan = "0" + bulan; } tahun = string.split(" ")[2]; return tahun + "-" + bulan + "-" + tanggal; }
b. . Kemudian kita buat HTML-nya seperti kode dibawah
<b>Tanggal Javascript (17 Agustus 2019)</b><br> <span id="tanggalIndotoDB"></span>
c. Setelah itu barulah kita tambahkan kode javascriptnya di dalam tag <script>…</script>
document.getElementById("tanggalIndotoDB").innerHTML = convertDateIndotoDB("17 Agustus 2019");
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal Javascript (17 Agustus 2019)</b><br> <input type="text" class="form-control" id="tanggalIndoInput">
dan pada javascriptnya seperti dibawah
document.getElementById("tanggalIndoInput").value = convertDateIndotoDB("17 Agustus 2019");
dan akan menghasilkan tampilan seperti gambar
4. Convert Tanggal Indonesia ke format datetime database (17 Agustus 2019 12:13:14)
Kali ini adalah kebalikan dari contoh diatas, kita akan convert tanggal dari tanggal indonesia menjadi format tanggal database agar bisa disimpan ke database, berikut adalah caranya :
a. Membuat function pada tag <script>…</script> seperti dibawah
function convertDateTimeIndotoDB(string) { // contoh : 17 Agustus 2019 12:13:14 bulanIndo = ['', 'Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September' , 'Oktober', 'November', 'Desember']; tanggal = string.split(" ")[0]; bulan = bulanIndo.indexOf(string.split(" ")[1]); if(parseInt(bulan) < 10){ bulan = "0" + bulan; } tahun = string.split(" ")[2]; jam = string.split(" ")[3]; return tahun + "-" + bulan + "-" + tanggal + " " + jam; }
b. . Kemudian kita buat HTML-nya seperti kode dibawah
<b>Tanggal & Waktu Javascript (17 Agustus 2019 12:13:14)</b><br> <span id="tanggalWaktuIndotoDB"></span>
c. Setelah itu barulah kita tambahkan kode javascriptnya di dalam tag <script>…</script>
document.getElementById("tanggalIndoInput").value = convertDateIndotoDB("17 Agustus 2019");
dan akan menghasilkan tampilan seperti dibawah
Atau kita juga bisa meletakkannya pada input text seperti dibawah
<b>Tanggal & Waktu Javascript (17 Agustus 2019 12:13:14)</b><br> <input type="text" class="form-control" id="tanggalWaktuIndoInput">
dan pada javascriptnya seperti dibawah
document.getElementById("tanggalWaktuIndoInput").value = convertDateTimeIndotoDB("17 Agustus 2019 12:13:14");
dan akan menghasilkan tampilan seperti gambar
Fungsi diatas tidak hanya untuk mengkonvert ke dalam nama bulan indonesia full saja. Sobat bisa mengganti arraynya menjadi format indonesia 3 huruf atau singkatan ataupun menjadi format bahasa inggris ataupun bahasa lainnya. Sekian postingan saya tentang Cara Convert Tanggal Database ke Format Indonesia dan Sebaliknya pada PHP dan Javascript. Jika ada pertanyaan silahkan tinggalkan pada kolom komentar dibawah dan apabila ada kesalahan saya mohon maaf. Kunjungi postingan saya lainnya untuk menambah wawasan sobat.
Jika sobat ingin mendownload tutorial diatas maka sobat bisa klik link dibawah ini :