
Selamat Sore SobatTech, pada hari Jumat ini gua akan berbagi tutorial yaitu cara membuat fitur beberapa menit yang lalu, atau 1 jam yang lalu, biasanya fitur ini sering kalian lihat di postingan seperti facebook dan instagram ya kan, nah gimana sih cara membuat fitur 1 menit yang lalu di pemrograman php ini, yuk langsung saja mulai :
Oke langsung saja ke tutorialnya
Membuat fitur beberapa menit yang lalu
Pertama silakan buat code php
<?php
date_default_timezone_set('Asia/Jakarta');
$waktu_posting = date("d-m-Y h:i");
echo $waktu_posting;
?>
fungsi dari date_default_timezone_set() adalah untuk mengatur zona waktu menjadi asia jakarta
$waktu_posting variable ini berisi hari/tanggal/tahun/jam/menit saat ini juga
coba kita lihat hasilnya seperti ini
07-05-2022 05:59
nah sekarang saya akan coba mengganti variable di atas menjadi seolah olah saya mundurkan 4 jam ke belakang jadi hasilnya seperti ini
<?php
date_default_timezone_set('Asia/Jakarta');
$waktu_posting = "07-05-2022 01:59";
echo $waktu_posting;
// hasilnya
// 07-05-2022 01:59
?>
Sekarang logikanya untuk membuat fitur beberapa menit yang lalu atau menghitung masa yang telah berlalu baik itu 1 menit yang lalu, 1 jam yang lalu bahkan 1 hari yang lalu.
caranya yaitu kita membandingkan berapa selisih waktu sekarang dengan waktu yang mau di hitung
sebagai contoh kita yaitu $waktu_posting
lihat kode berikut, yang merupakan waktu tetap yang mau kita cek berapa selisih dengan waktu sekarang
$waktu_posting = "07-05-2022 01:59";
code melihat waktu sekarang
untuk membuat atau melihat waktu yang terjadi sekarang kita bisa menggunakan fungsi time()
$waktu_sekarang = time();
selanjutnya kita hanya membandingkan antara waktu_posting dan waktu sekarang
<?php
date_default_timezone_set('Asia/Jakarta');
$waktu_posting = "07-05-2022 01:59";
$waktu_sekarang = time();
echo $waktu_posting
echo "<br>";
echo $waktu_sekarang;
?>
dan kalau di jalankan hasilnya akan seperti ini
07-05-2022 01:59
1651878717
karena kedua variabel tersebut formatnya berbeda maka variable $waktu_posting harus kita ubah dulu ke format time caranya kita menggunakan fungsi
strtotime()
jadi hasinya seperti ini
<?php
date_default_timezone_set('Asia/Jakarta');
$waktu_posting = "07-05-2022 01:59";
$waktu_sekarang = time();
echo strtotime($waktu_posting);
echo "<br>";
echo $waktu_sekarang;
?>
dan hasil setelah di jalankan
1651863540
1651878900
nah sekarang karena format nya sudah sama
selanjutnya kita akan membuat fitur utamanya
kita cukup mengambil selisih angka tersebut
$selisih = $waktu_sekarang - strtotime($waktu_posting);
hasil dari $selisih adalah jumlah berapa detik perbedaan atau jarak dari kedua variable tersebut
hasilnya
15524
berarti ada 15.524 detik yang lalu
Code Lengkap Function
sekarang kita akan membuat fungsinya
<?php
date_default_timezone_set('Asia/Jakarta');
$waktu_posting = "07-05-2022 05:37";
$waktu_sekarang = time();
$selisih = $waktu_sekarang - strtotime($waktu_posting);
if ($selisih < 60) {
echo round($selisih)." detik yang lalu";
}elseif($selisih < (60*60)){
echo round(($selisih/60))." menit yang lalu";
}elseif($selisih < (60*60*24)){
echo round(($selisih/(60*60)))." jam yang lalu";
}elseif($selisih < (60*60*24*3)){
echo round(($selisih/(60*60*24)))." hari yang lalu";
}else{
echo "sudah lebih 3 hari";
}
?>
fungsi round() adalah untuk membulatkan sebuah angka jadi biar gak ada koma koma nya
round()
penjelasan
if ($selisih < 60) {
echo round($selisih)." detik yang lalu";
di bagian kode ini kita akan mengecek apakah selisihnya itu kurang dari 60 detik berartikan selisihnya masih perdetik masih hangat ya kan
kemudian di else if
}elseif($selisih < (60*60)){
echo round(($selisih/60))." menit yang lalu";
dibagian ini kita akan mengalikan karena 1 menit ada 60 detik maka kita kalikan saja dan seterusnya
sampai di baris ini
elseif($selisih < (60*60*24*3)){
echo round(($selisih/(60*60*24)))." hari yang lalu";
60*60*24*3 itu artinya 60 detik x 60 menit x 24 jam x 3 hari
berarti kode ini apabila belum mencapai 3 hari maka akan di kategorikan termasuk beberapa hari yang lalu
Mungkin sekian penjelasan bagimana cara membuat fitur beberapa menit yang lalu di php, sekian dan terima kasih