Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menukar rentetan masa ke cap waktu dalam php
Dalam PHP, menukar rentetan masa kepada cap masa ialah tugas pengaturcaraan yang sangat biasa. Cap masa merujuk kepada bilangan saat yang telah berlalu sejak masa Unix (1 Januari 1970 Ia digunakan secara meluas untuk mengendalikan tarikh dan masa kerana ia adalah format universal. Walaupun PHP menyediakan banyak fungsi tarikh dan masa terbina dalam, untuk beberapa format masa khas, penukaran masa diperlukan.
Di bawah ini kita akan membincangkan cara menukar rentetan masa kepada cap waktu dalam PHP.
fungsi strtotime() ialah fungsi penting untuk masa pemprosesan dalam PHP. Ia boleh menghuraikan rentetan tarikh yang boleh dibaca manusia ke dalam cap waktu Unix. Berikut ialah cara menukar rentetan masa kepada cap masa menggunakan fungsi strtotime():
$time = strtotime("2019-01-01 10:30:00");
Di sini, rentetan masa "2019-01-01 10:30:00" dihantar ke strtotime( ) fungsi, yang kemudiannya mengembalikan cap waktu Unix yang mewakili masa yang diwakili oleh rentetan masa. Cap masa ini boleh disimpan dalam pembolehubah $time.
Dalam PHP5.2 dan ke atas, kita boleh menggunakan kelas DateTime untuk menukar rentetan masa kepada cap waktu. Kelas ini menyediakan lebih banyak fungsi pemprosesan tarikh dan masa, seperti pengiraan tarikh, pemformatan tarikh, dsb. Begini cara untuk menukar rentetan masa kepada cap masa menggunakan kelas DateTime:
$dt = new DateTime("2019-01-01 10:30:00"); $time = $dt->getTimestamp();
Di sini, kita mula-mula mencipta objek DateTime $dt dan menghantar rentetan masa itu sebagai parameter. Kemudian, kami menggunakan kaedah getTimestamp() untuk mendapatkan cap masa. Cap masa ini boleh disimpan dalam pembolehubah $time.
Jika kita mempunyai rentetan masa bukan standard, seperti "01/01/2019 10:30", kita boleh menggunakan date_parse( ) fungsi menukarkannya kepada cap masa. Fungsi date_parse() boleh menghuraikan rentetan tarikh ke dalam tatasusunan yang mengandungi pelbagai bahagian tarikh dan masa. Menggunakan bahagian ini, kita boleh membina objek datetime dan kemudian menukarnya kepada cap waktu Unix menggunakan kaedah getTimestamp().
Berikut ialah cara menukar rentetan masa kepada cap masa menggunakan fungsi date_parse():
$date_parts = date_parse("01/01/2019 10:30"); $date = new DateTime(); $date->setDate($date_parts["year"], $date_parts["month"], $date_parts["day"]); $date->setTime($date_parts["hour"], $date_parts["minute"], $date_parts["second"]); $time = $date->getTimestamp();
Di sini, kita mula-mula menggunakan fungsi date_parse() untuk menghuraikan rentetan masa menjadi Tatasusunan bersekutu $date_parts. Kami kemudian menggunakan elemen tatasusunan ini untuk mencipta objek DateTime $date. Akhir sekali, kami menggunakan kaedah getTimestamp() untuk mendapatkan cap waktu Unix dari $date. Cap masa ini boleh disimpan dalam pembolehubah $time.
Ringkasan:
Artikel ini memperkenalkan tiga kaedah untuk menukar rentetan masa kepada cap masa. Dengan menggunakan fungsi strtotime(), kelas DateTime dan fungsi date_parse(), kami dapat mengendalikan format masa yang berbeza dengan mudah dan menukarnya kepada cap waktu Unix. Mana-mana kaedah yang anda pilih, adalah penting untuk diingat bahawa format tarikh dan masa mesti dihuraikan dengan betul, jika tidak, ralat masa akan terhasil.
Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan masa ke cap waktu dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!