Cara Menampilkan “12 Menit Yang Lalu” di Halaman Web PHP
Waktu adalah aspek penting dari antarmuka pengguna, terutama dalam aplikasi web di mana menampilkan waktu yang relevan sejak sebuah peristiwa terjadi dapat meningkatkan pengalaman pengguna. Cara umum untuk melakukan ini adalah dengan menunjukkan pesan seperti “12 menit yang lalu” atau “5 detik yang lalu.” Dalam posting blog ini, kita akan menjelajahi cara menerapkan fitur ini dalam aplikasi PHP Anda melalui fungsi yang berguna.
Mengapa Menggunakan Format Waktu yang Telah Berlalu?
Menampilkan waktu dalam format yang telah berlalu memiliki beberapa keuntungan, termasuk:
- Jelas: Alih-alih menunjukkan tanggal dan waktu tertentu, yang mungkin membingungkan pengguna, waktu yang telah berlalu lebih intuitif.
- Relevan: Menyediakan konteks langsung terkait peristiwa, membantu pengguna memahami kelayakan informasi (misalnya, seberapa baru sebuah posting).
- Ringkas: Pesan waktu yang dipersingkat membuat antarmuka Anda tetap bersih dan ramah pengguna.
Solusi: Mengimplementasikan Fungsi Waktu Yang Telah Berlalu
Untuk menampilkan pesan seperti “12 menit yang lalu”, kita dapat membuat fungsi PHP yang disebut time_since()
yang menerima jumlah detik sejak sebuah peristiwa sebagai input dan mengembalikan string yang dapat dibaca manusia yang mewakili seberapa lama peristiwa itu terjadi.
Berikut adalah bagaimana fungsi tersebut terlihat dalam PHP:
function time_since($since) {
$chunks = array(
array(60 * 60 * 24 * 365 , 'tahun'),
array(60 * 60 * 24 * 30 , 'bulan'),
array(60 * 60 * 24 * 7, 'minggu'),
array(60 * 60 * 24 , 'hari'),
array(60 * 60 , 'jam'),
array(60 , 'menit'),
array(1 , 'detik')
);
for ($i = 0, $j = count($chunks); $i < $j; $i++) {
$seconds = $chunks[$i][0];
$name = $chunks[$i][1];
if (($count = floor($since / $seconds)) != 0) {
break;
}
}
$print = ($count == 1) ? '1 '.$name : "$count {$name}s";
return $print;
}
Memecah Fungsi
-
Mendefinisikan Bagian Waktu: Fungsi ini mendefinisikan array yang disebut
$chunks
. Array ini menyimpan berbagai interval waktu dan label yang sesuai (yaitu, tahun, bulan, minggu, hari, jam, menit, detik). Interval ini membantu menentukan bagaimana mengekspresikan waktu yang telah berlalu. -
Menghitung Waktu Yang Telah Berlalu: Sebuah loop mengiterasi melalui array
$chunks
untuk menemukan unit waktu terbesar yang sesuai dengan jumlah detik yang telah berlalu. Fungsi kemudian menghitung berapa banyak unit tersebut yang sesuai dalam waktu yang diberikan. -
Memformat Output: Setelah unit waktu yang sesuai ditemukan, fungsi ini memformat string yang akan dikembalikan. Jika waktu tersebut tunggal (misalnya, “1 menit”), ia menghindari pempluralan unit. Jika tidak, ia menambahkan ’s’ di akhir (misalnya, “2 menit”).
Contoh Penggunaan
Untuk menggunakan fungsi ini, cukup panggil dengan jumlah detik sebagai argumen. Misalnya:
echo time_since(720); // Mengeluarkan: "12 menit"
echo time_since(5); // Mengeluarkan: "5 detik"
Metode ini memudahkan untuk menampilkan seberapa lama sebuah peristiwa terjadi dalam format yang mudah dipahami pengguna dalam sekejap.
Kesimpulan
Mengimplementasikan fungsi time_since()
yang sederhana dapat secara signifikan meningkatkan cara waktu ditampilkan dalam aplikasi PHP Anda. Tidak hanya menyediakan konteks yang diperlukan, tetapi juga menciptakan pengalaman pengguna yang lebih menarik dan ramah. Dengan memanfaatkan format waktu yang telah berlalu, Anda dapat membuat antarmuka menarik yang membantu pengguna dengan mudah memahami keterkinian konten yang mereka interaksikan.
Silakan sesuaikan dan kembangkan fungsi ini sesuai kebutuhan Anda, dan segera aplikasi web Anda akan menjadi lebih ramah pengguna dan informatif. Selamat coding!