Mencari Selisih Tanggal di PHP

Bagaimana cara mencari atau menghitung selisih antara dua tanggal di PHP menggunakan kelas DateTime


Ini adalah panduan sederhana tentang bagaimana mencari atau menghitung selisih antara dua tanggal di PHP. Pastikan untuk mencoba contoh di bawah jika Anda baru mengenal topik ini. Hal ini sering kita jumpai pada kasus-kasus pembuatan aplikasi berbasis web (PHP) seperti:
  1. Menghitung waktu keterlambatan pada aplikasi pencatatan presensi pegawai
  2. Menghitung umur karyawan dan masa kerja pada sistem kepegawaian
  3. Menghitung lama pengerjaan project pada sistem manajemen project
  4. Mencari atau menghitung waktu keterlambatan atau peminjaman pada sistem pustaka
  5. Mencari atau Menghitung durasi peminjaman pada sistem rental mobil/motor 
  6. dan pada kasus-kasus pembuatan sistem/aplikasi lainnya

Mencari selisih tanggal di PHP menggunakan kelas DateTime

Untuk mencari atau menghitung jumlah selisih hari dari dua tanggal PHP kita akan menggunakan DateTime class dengan fungsi diff, cara ini sangat mudah karena lebih bersih dan menyediakan antarmuka OO (Object Oriented). Kelas ini tersedia pada PHP dengan versi 5.3+

Misalnya, jika kita ingin mendapatkan perbedaan atau selisih dalam hitungan hari menggunakan kelas DateTime, kita dapat melakukan hal berikut:


[$tanggal1 = new DateTime("2011-07-06"); $tanggal2 = new DateTime(); $perbedaan = $tanggal2->diff($tanggal1)->format("%a"); echo $perbedaan;]

Untuk mengubah selisih tanggal menjadi format yang dapat kita pahami yang terdiri dari tahun, bulan, hari, jam dan menit:


[$tanggal = '2005-09-01 09:02:23'; $tanggal = new DateTime($tanggal); $sekarang = new DateTime(); $perbedaan = $tanggal->diff($sekarang); //gabungkan echo $perbedaan->y.' selisih tahun.
'; echo $perbedaan->m.' selisih bulan.
'; echo $perbedaan->d.' selisih hari.
'; echo $perbedaan->h.' selisih jam.
'; echo $perbedaan->i.' selisih menit.
';]

Dengan menggunakan kelas DateTime anda bisa mencari atau menghitung selisih tahun, bulan, hari jam dan menit dari dua buah tanggal. Seperti yang Anda lihat, kelas DateTime cukup mudah setelah Anda mengetahui penggunaannya!

Mencari selisih tanggal di PHP menggunakan fungsi Strtotime

untuk mencari atau menghitung selisih tanggal dan waktu di PHP pada versi PHP 5.3.0 kebawah, kita dapat menggunakan fungsi strtotime (), walaupun terlihat jadul, fungsinya tetap efektif. Sebagai contoh:

[$tanggal_lahir = strtotime('1989-01-18'); $sekarang = time(); // Waktu sekarang $diff = $sekarang - $tanggal_lahir; echo 'umur anda adalah ' . floor($diff / (60 * 60 * 24 * 365)) . ' Tahun'; // Umur anda dalam hitungan tahun echo 'umur anda adalah ' . floor($diff / (60 * 60 * 24)) . ' Hari'; // Umur anda dalam hitungan hari]

Pada contoh di atas, fungsi strtotime () menghasilkan format timestamp. Timestamp adalah jenis format waktu dalam bentuk hitungan detik terhitung sejak (1970-01-01 00:00:00), sehingga stempel waktu 1 berarti 1 detik sejak sekarang atau 1970-01-01 00: 00:01.

Karena hasilnya dalam hitungan detik, maka untuk menghitung selisih waktu, kita harus membaginya dengan hitungan detik, pada contoh di atas, untuk menghitung hari, kita menggunakan perkalian detik, menit dan jam (60 x 60 x 24).

Selain dari dua cara sebelumnya, kita akan membahas satu cara lagi. Metode ini memiliki beberapa kelebihan, yaitu bisa menghitung selisih jam, menit, detik lebih mudah, misalnya:

[$start = strtotime('2017-07-12 10:05:25'); $end = strtotime('2017-07-13 11:07:33'); $diff = $end - $start; $hours = floor($diff / (60 * 60)); $minutes = $diff - $hours * (60 * 60); echo 'Selisih Waktu: ' . $hours . ' Jam, ' . floor( $minutes / 60 ) . ' Menit';]

Jika menemukan kendala mari kita diskusikan.


COMMENTS

BLOGGER: 5

Nama

Apache,4,Bisnis,1,Bisnis Online,1,Blog,10,Blogger,6,Cpanel,1,CSS,1,Database,3,Framework,1,Hacking,3,HTML,1,HTML and CSS,2,Info,2,Javascript,2,Javascript and AJAX,5,Keamanan Web,1,linux,2,Muslim,1,MySQL,3,Networking,1,Open GL,1,Optimasi Website,7,Pemrograman java,1,Pemrograman web,5,PHP,7,phpMyAdmin,1,SEO,4,SQL,2,SQL Injection,3,SQL Server,13,SQLMap,3,UMKM,2,Umroh,1,Website,1,Wordpress,4,Xampp,1,
ltr
item
Nanang Gunawan Blog: Mencari Selisih Tanggal di PHP
Mencari Selisih Tanggal di PHP
Bagaimana cara mencari atau menghitung selisih antara dua tanggal di PHP menggunakan kelas DateTime
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbC5qAeEuA2_stsll1n-MB7i-i7nzdFnLoauPBfqnW6K4gPSaFtLVYD3qNa6ZQAmaB7DqVXJPk0tWIEKfu48N9YC0gisRuZrMaS-NngUlakrcS69_6SITDxNwAj2mhp6KA5vvVScqy6RA/s1600/Selisih+Tanggal-PHP.jpg
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbC5qAeEuA2_stsll1n-MB7i-i7nzdFnLoauPBfqnW6K4gPSaFtLVYD3qNa6ZQAmaB7DqVXJPk0tWIEKfu48N9YC0gisRuZrMaS-NngUlakrcS69_6SITDxNwAj2mhp6KA5vvVScqy6RA/s72-c/Selisih+Tanggal-PHP.jpg
Nanang Gunawan Blog
https://www.nananggunawan.com/2017/06/mencari-selisih-tanggal-di-php.html
https://www.nananggunawan.com/
https://www.nananggunawan.com/
https://www.nananggunawan.com/2017/06/mencari-selisih-tanggal-di-php.html
true
4195327445586723627
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy Table of Content