Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Mengira dan Memaparkan Masa Berlalu Sejak Cap DateTime dalam PHP?

Bagaimanakah Saya Boleh Mengira dan Memaparkan Masa Berlalu Sejak Cap DateTime dalam PHP?

Mary-Kate Olsen
Lepaskan: 2024-12-19 07:47:10
asal
502 orang telah melayarinya

How Can I Calculate and Display the Time Elapsed Since a DateTime Stamp in PHP?

Menentukan Masa Berlalu Sejak Cap Tarikh Masa dalam PHP

Dalam PHP, mendapatkan masa berlalu sejak cap tarikh dan masa tertentu adalah penting. Maklumat ini boleh berguna dalam memaparkan masa berlalu dalam format mesra pengguna, seperti "xx Minit Lalu" atau "xx Hari Lalu."

Penyelesaian:

Kod yang disediakan menunjukkan pendekatan yang berkesan untuk menukar cap tarikh dan masa kepada masa relatif format:

<?php
$timestamp = strtotime('2010-04-28 17:25:43');

function humanTiming($timestamp) {
    $difference = time() - $timestamp;
    $tokens = array(
        31536000 => 'year',
        2592000 => 'month',
        604800 => 'week',
        86400 => 'day',
        3600 => 'hour',
        60 => 'minute',
        1 => 'second'
    );

    foreach ($tokens as $unit => $text) {
        if ($difference < $unit) continue;
        $units = floor($difference / $unit);
        return $units . ' ' . $text . (($units > 1) ? 's' : '');
    }
}

echo 'Event occurred ' . humanTiming($timestamp) . ' ago';
?>
Salin selepas log masuk

Penjelasan:

  • Fungsi strtotime() menukarkan cap tarikh dan masa yang disediakan ('2010-04-28 17:25 :43') ke dalam cap masa UNIX.
  • Fungsi humanTiming() mengira perbezaan antara masa semasa dan cap masa.
  • Fungsi ini kemudian melelang dalam tatasusunan unit masa (tahun, bulan, minggu, dll.) dan perwakilan teks yang sepadan.
  • Ia menyemak jika perbezaan masa lebih besar daripada atau sama dengan unit semasa dan mengembalikan perwakilan teks yang sesuai.
  • Akhir sekali, rentetan yang dikembalikan dilampirkan pada output, menunjukkan masa relatif berlalu sejak cap masa.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengira dan Memaparkan Masa Berlalu Sejak Cap DateTime dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan