Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar cap waktu kepada masa AD dalam PHP

Bagaimana untuk menukar cap waktu kepada masa AD dalam PHP

PHPz
PHPzasal
2023-03-22 16:33:361394semak imbas

PHP ialah bahasa skrip bahagian pelayan yang digunakan secara meluas yang memainkan peranan penting dalam pembangunan web. Cap masa ialah jenis data yang sangat biasa dalam PHP, yang merupakan integer yang mewakili bilangan saat sejak "1 Januari 1970 00:00:00 UTC".

Walau bagaimanapun, apabila kita perlu menukar cap waktu kepada format masa AD yang boleh dibaca manusia, beberapa pemprosesan tambahan diperlukan. Artikel ini akan memperkenalkan cara menukar cap masa kepada masa AD dalam PHP, termasuk kaedah penukaran format biasa dan penyelesaian kepada beberapa masalah biasa.

Format masa biasa

Sebelum menukar cap masa kepada masa AD, anda perlu menjelaskan format masa yang anda mahu tukarkan. Dalam PHP, format masa biasa adalah seperti berikut:

  • Y-m-d H:i:s: tahun-bulan-hari jam:minit:saat, contohnya, 22-02-2022 22:22: 22
  • Y/m/d H:i:s: Sama seperti di atas, tetapi gunakan slash sebagai pemisah
  • Y tahun m bulan d hari H:i:s: Sama seperti di atas, tetapi gunakan bahasa Cina Sebagai pemisah
  • Y-m-d: tahun-bulan-hari, contohnya 22-02-2022
  • Y/m/h: Sama seperti di atas, tetapi gunakan slash sebagai pemisah
  • m, d, tahun Y: Sama seperti di atas, tetapi gunakan bahasa Cina sebagai pembatas

Gunakan fungsi date() untuk penukaran format

PHP menyediakan fungsi terbina dalam date(), anda boleh menukar cap masa kepada masa dengan mudah dalam format yang ditentukan. Bentuk biasa bagi fungsi ini ialah:

date($format, $timestamp)

di mana $format ialah format masa yang hendak ditukar dan $timestamp ialah cap masa yang hendak ditukar. Contohnya, untuk menukar cap masa 1645533639 kepada masa dalam format "Y-m-d H:i:s", anda boleh menggunakan kod berikut:

echo date('Y-m-d H:i:s', 1645533639);

Outputnya ialah:

2022-02-22 22:27:19

Begitu juga Untuk menukar cap masa kepada masa dalam format lain, hanya nyatakan format yang sepadan. Contohnya, untuk menukar cap masa kepada masa dalam format "Y/m/d", anda boleh menukar kod kepada:

echo date('Y/m/d', 1645533639);

Outputnya ialah:

2022/02/22

Mengendalikan isu zon waktu

Apabila menggunakan fungsi date() untuk penukaran masa, anda perlu memberi perhatian kepada isu zon waktu. Memandangkan zon waktu lalai PHP ialah waktu UTC, zon waktu perlu dilaraskan mengikut situasi sebenar. Terdapat dua kaedah tetapan zon waktu biasa:

1 Gunakan fungsi date_default_timezone_set()

Fungsi ini boleh menetapkan zon waktu lalai. Contohnya, jika zon waktu semasa ialah Waktu Piawai China, anda boleh menetapkan zon waktu kepada:

date_default_timezone_set('Asia/Shanghai');

2 Hantar maklumat zon waktu ke fungsi date()

Kaedah ini boleh melepasi parameter yang menunjukkan zon waktu semasa apabila memanggil fungsi date(). Contohnya, untuk menetapkan zon waktu kepada Waktu Piawai China, anda boleh menukar kod kepada:

echo date('Y-m-d H:i:s', 1645533639 + 8*3600);

di mana, 8 mewakili zon waktu China (UTC+8), cuma tambahkan saat 8 jam kepada cap masa.

Mengendalikan isu cap waktu Unix

Cap masa Unix ialah kaedah perwakilan masa yang mewakili sejak "1 Januari 1970 00:00:00 UTC" Bilangan saat sejak itu. Dalam PHP, cap masa biasanya merujuk kepada cap masa Unix.

Masalah biasa dengan cap waktu Unix ialah ia dikira dalam saat dan oleh itu hanya tepat ke tahap kedua, bukan milisaat atau mikrosaat. Jika anda perlu menangani masa yang lebih terperinci, anda perlu menggunakan kaedah perwakilan masa jenis lain.

Tukar cap waktu kepada objek DateTime

Dalam PHP, DateTime ialah kelas yang mewakili tarikh dan masa dengan mudah menambah dan menolak tarikh dan masa . Untuk menukar cap masa kepada objek DateTime, anda boleh menggunakan kod berikut:

$datetime = new DateTime();
$datetime->setTimestamp(1645533639);
echo $datetime->format('Y-m-d H:i:s');

di mana objek DateTime kosong mula-mula dibuat, kemudian cap masa ditetapkan kepada objek menggunakan kaedah setTimestamp() dan akhirnya menggunakan format() kaedah memformat masa dan mengeluarkannya.

Kesimpulan

Dalam PHP, cap waktu ialah jenis data biasa, yang biasanya digunakan untuk merekodkan masa apabila sesuatu peristiwa berlaku. Untuk menukar cap masa kepada masa AD, hanya gunakan fungsi date(). Apabila menggunakan fungsi date(), anda perlu memberi perhatian kepada isu zon waktu dan membuat pelarasan mengikut situasi sebenar. Jika anda perlu mengendalikan masa yang lebih terperinci, anda boleh menggunakan jenis perwakilan masa yang lain, seperti objek DateTime.

Atas ialah kandungan terperinci Bagaimana untuk menukar cap waktu kepada masa AD dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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