Seperti cerita di artikel sebelumnya mengenai Script SQL Menghitung Jumlah Hari di antara Dua tanggal artikel ini juga tentang mencari jumlah hari, tetapi dengan script PHP. Jadi, ternyata, selain dapat ditemukan dengan manual kecil, PHP juga kelas bernama Datetime () dan memiliki fungsi diff di dalamnya (tanggal-diff). Ada empat (4) contoh script yang saya ditunjukkan dalam makalah ini untuk mendapatkan hasil yang sama. Oke, langsung ke script:
Script 1
<?php$dt1 = new DateTime('2011-05-25');$dt2 = new DateTime('2011-06-23');$telat = $dt1->diff($dt2);?>
Script 2
<?php$dt1 = date_create('2011-05-25');$dt2 = date_create('2011-06-23');$telat = date_diff($dt1, $dt2);?>
Script 3
<?php$dt1 = strtotime("2011/05/25");$dt2 = strtotime("2011/06/23");$diff = abs($dt2-$dt1);$telat = $diff/86400; // 86400 detik sehari?>
Script 4
<?php$dt1 = mktime(12,0,0,25,5,2011);$dt2 = mktime(12,0,0,23,6,2011);$buff = $dt2-$dt1;$telat = floor($buff/60/60/24);?>
SCRIPT PERINTAH SYNTAX SQL HITUNG JUMLAH ANTARA DUA TANGGAL
Membuat program untuk persewaan gunting, lalu per-hari dihargai 1 juta rupiah. Kemudian, data yang di simpan dalam database kan berupa tanggal peminjaman dan tanggal pengembalian, nah, berdasarkan tanggal itu, kita bisa menghitung jumlah hari tanpa berpikir pusing ngoding jumpalitan segala macem pake strpos, strcat, substring, dan lain-lain.
Jadi, dengan memanfaatkan fungsi yang ada dalam MySQL (maaf, untuk database yang lain sama apa tidak, saya belum coba), yaitu DATEDIFF. Dengan fungsi tersebut, kita bisa langsung menghitung jumlah hari di antara dua buah tanggal (kenapa tanggal pake buah ya?). Struktur untuk fungsi datediff sendiri seperti ini:
1 DATEDIFF(date1,date2)
date1 = tanggal akhir, date2 = tanggal awal. Sehingga, paling tidak, perintah SQL yang digunakan yaitu seperti begini:
SQL : SELECT DATEDIFF('2011-06-23','2011-05-25')//output:+------------------------------------------+|SELECT DATEDIFF('2011-06-23','2011-05-25')|+------------------------------------------+| 29|+------------------------------------------+//atau begini:SQL : SELECT DATEDIFF('2011-06-23','2011-05-25') AS telat//output+-----+|telat|+-----+| 29|+-----+
Semoga info yang kami Share bermanfaat buat kalian semua.
Tidak ada komentar:
Posting Komentar