Dalam PHP, cap waktu ialah integer yang mewakili bilangan saat yang telah berlalu sejak 1 Januari 1970 00:00:00 UTC. Cap masa sering digunakan untuk merekodkan masa sesuatu acara, seperti masa pendaftaran pengguna, masa pesanan, dsb.
Kadangkala kita perlu menukar cap masa kepada hari untuk pengiraan dan paparan yang lebih mudah. Berikut ialah dua kaedah untuk melaksanakan fungsi menukar cap masa kepada hari.
Kaedah 1: Gunakan fungsi tarikh
Fungsi tarikh dalam PHP sangat berkuasa dan boleh digunakan untuk penukaran masa dan pemformatan.
Kita boleh menggunakan fungsi date() dalam PHP untuk menukar cap waktu kepada tarikh, dan kemudian gunakan fungsi strtotime() untuk mengira bilangan saat yang telah berlalu antara titik masa tertentu.
Berikut ialah contoh kod:
$timestamp = 1633420800; // 2021年10月6日 00:00:00 $days = round((time() - strtotime(date('Y-m-d', $timestamp))) / (60 * 60 * 24)); echo $days; // 输出:0
Dalam kod di atas, kami mula-mula mentakrifkan pembolehubah cap masa $timestamp
, yang mewakili masa pada 0:00 pada 6 Oktober 2021 setem. Kemudian gunakan fungsi date() untuk memformat cap masa ke dalam rentetan tarikh Y-m-d
. Kemudian gunakan fungsi strtotime() untuk menukar rentetan tarikh kepada cap masa, mengira perbezaan dari masa semasa, dan akhirnya bahagikan saat dengan (60 60 24) untuk mendapatkan bilangan hari.
Nota: Untuk mengelakkan ralat pengiraan, fungsi round() digunakan di sini untuk membundarkan bilangan hari kepada integer terdekat. Juga ambil perhatian bahawa cap masa semasa harus digunakan semasa mengira. Hasil keluaran kod di atas hendaklah 0, kerana kurang daripada satu hari sebelum tengah malam pada 6 Oktober 2021.
Kaedah 2: Gunakan fungsi lantai
Jika kita hanya perlu mengira secara kasar bilangan hari tanpa menukar kepada format tarikh, kita juga boleh menggunakan fungsi lantai untuk mengira terus bilangan hari sepadan dengan cap masa.
Andaikan kita perlu menukar 1633420800 kepada hari, kodnya adalah seperti berikut:
$timestamp = 1633420800; // 2021年10月6日 00:00:00 $days = floor($timestamp / (60 * 60 * 24)); echo $days; // 输出:18907
Dalam kod di atas, kita membahagikan cap masa secara terus dengan (60 60 24 ) untuk mendapatkan bilangan hari berlalu, dan kemudian gunakan fungsi lantai untuk mengambil bahagian integer. Hasil pengiraan di sini ialah 18907, bermakna 18907 hari telah berlalu.
Ringkasan
Artikel ini memperkenalkan dua kaedah untuk menukar cap waktu PHP kepada hari Selain itu, fungsi pemprosesan tarikh lain juga boleh digunakan untuk melengkapkan penukaran masa dan pengiraan mengikut keperluan tertentu. Menguasai penggunaan fungsi cap masa dan tarikh adalah sangat penting untuk pembangunan PHP dan analisis data.
Atas ialah kandungan terperinci Analisis ringkas tentang cara menukar cap waktu kepada hari dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!