Dalam proses pembangunan web, kami selalunya perlu memproses data berkaitan masa. Sebagai bahasa pembangunan web yang popular, PHP menyediakan pelbagai fungsi tarikh dan masa untuk memudahkan pemprosesan masa kami. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menukar aksara kepada format masa.
1. Fungsi strtotime()
Fungsi strtotime() PHP boleh menukar tarikh dan masa aksara kepada cap waktu Unix (dari 00:00:00 pada 1 Januari 1970 saat ). Fungsi strtotime() mempunyai dua parameter: parameter pertama ialah rentetan tarikh dan masa yang perlu ditukar, dan parameter kedua adalah pilihan dan lalai kepada masa semasa.
Contoh:
$date1 = strtotime("2018-12-22"); // 将字符串“2018-12-22”转换为Unix时间戳 $date2 = strtotime("2018-12-22 18:30:00"); // 将字符串“2018-12-22 18:30:00”转换为Unix时间戳
Dalam kod di atas, $date1 dan $date2 masing-masing ditetapkan pada tengah malam pada 22 Disember 2018 dan 6:30 petang pada 22 Disember 2018. Jika hujah kedua ditinggalkan, ia lalai kepada masa semasa.
2. Kelas DateTime()
Selain fungsi strtotime(), kita juga boleh menggunakan kelas DateTime() terbina dalam PHP untuk menukar aksara kepada format masa. Contoh kelas DateTime() boleh digunakan untuk melaksanakan pelbagai operasi berkaitan tarikh dan masa, seperti memformat tarikh dan masa, mengira perbezaan antara dua tarikh, dsb.
Contoh:
$dateStr = '2019-10-01'; $date = new DateTime($dateStr); // 创建一个DateTime对象,使用$dateStr初始化日期 echo $date->format('Y-m-d H:i:s'); // 将$date对象格式化为“年-月-日 时:分:秒”格式的字符串并输出
Dalam kod di atas, $dateStr diberikan rentetan "2019-10-01", dan kemudian digunakan untuk memulakan objek DateTime, yang digunakan Format tarikh dan keluarkannya.
3. Pemformatan masa
Selepas menukar aksara kepada format masa, kita mungkin perlu memformatkan masa kepada jenis rentetan tarikh dan masa yang lain. PHP menyediakan pelbagai fungsi dan parameter untuk membantu kami mencapai matlamat ini.
Sintaks pemformatan masa yang biasa digunakan adalah seperti berikut:
字符 | 描述 | 示例 |
---|---|---|
Y | 4位数字完整表示的年份 | 1999 |
y | 2位数字表示的年份 | 99 |
m | 数字表示的月份(有前导零) | 01 ~ 12 |
n | 数字表示的月份(无前导零) | 1 ~ 12 |
d | 月份中的第几天(有前导零) | 01 ~ 31 |
j | 月份中的第几天(无前导零) | 1 ~ 31 |
H | 24小时制数字表示的小时数 | 00 ~ 23 |
h | 12小时制数字表示的小时数 | 01 ~ 12 |
i | 数字表示的分钟数(有前导零) | 00 ~ 59 |
s | 数字表示的秒数(有前导零) | 00 ~ 59 |
A | 大写的上午或下午 | AM或PM |
a | 小写的上午或下午 | am或pm |
Contoh:
$timestamp = strtotime('2021-06-30 18:30:45'); $date = new DateTime(); $date->setTimestamp($timestamp); echo $date->format('Y年m月d日 H:i:s');
Dalam kod di atas, objek $date akan mengeluarkan masa yang diformatkan , Hasil keluaran ialah "30 Jun 2021 18:30:45".
Kesimpulan
PHP menyediakan berbilang kaedah untuk menukar aksara kepada format masa. Dalam aplikasi praktikal, kita boleh memilih kaedah yang berbeza mengikut situasi sebenar. Sebagai contoh, menggunakan fungsi strtotime() boleh menukar aksara kepada cap masa dengan cepat dan menggunakan kelas DateTime() menjadikannya lebih mudah untuk mengendalikan pengiraan dan pemformatan berkaitan masa secara fleksibel. Dengan menguasai fungsi dan kelas ini, anda boleh menyelesaikan tugas berkaitan masa dengan lebih cekap.
Atas ialah kandungan terperinci Bagaimana untuk menukar aksara kepada format masa menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!