Rumah >pembangunan bahagian belakang >tutorial php >Petua Pantas: Cara Mengurus TimeZones di PHP
Konsep Utama:
dan dalam Php 5 dan 7, menawarkan kawalan dan fleksibiliti yang lebih besar. menghalang pengubahsuaian zon, berguna untuk senario yang memerlukan tetapan masa yang tidak berubah. DateTimeZone
DateTimeZoneImmutable
DateTimeZoneImmutable
untuk tetapan zon masa skrip yang luas, dan kelas untuk kawalan lebih halus, membolehkan pengurusan serentak pelbagai zon waktu dan akses kepada maklumat zon waktu terperinci.
date_default_timezone_set()
DateTimeZone
-sangat penting untuk pengendalian zon masa yang cekap dan ralat dalam aplikasi anda. Pilihan bergantung pada kerumitan keperluan zon waktu anda.
DateTimeZone
Timezones telah menjadi sebahagian daripada PHP sejak versi 4. Walau bagaimanapun, fungsi telah dipertingkatkan dengan pengenalan kelas dan .
Menggunakan DateTimeZone
DateTimeZoneImmutable
Fungsi ini menetapkan zon waktu lalai untuk keseluruhan skrip. Timezones ditentukan menggunakan format "benua/bandar" atau "benua/negara/bandar" (senarai komprehensif boleh didapati dalam dokumentasi PHP).
date_default_timezone_set()
Selepas menetapkan zon waktu, fungsi seperti
) akan mencerminkan tetapan baru. Perhatikan bahawa kaedah ini tidak mempunyai butiran untuk mengendalikan beberapa zon waktu dalam satu skrip tunggal.
<code class="language-php"><?php date_default_timezone_set('America/Los_Angeles'); ?></code>
menggunakan kelas date_default_timezone_get()
date()
Untuk kawalan yang lebih besar dan keupayaan untuk menguruskan beberapa zon waktu, kelas disyorkan. DateTimeZone
dan menggunakannya untuk memulakan objek DateTimeZone
, yang membolehkan anda memformat tarikh dan masa mengikut zon waktu yang ditentukan.
<code class="language-php"><?php $timezone = new DateTimeZone('America/Chicago'); $datetime = new DateTime('now', $timezone); echo $datetime->format('Y-m-d H:i:s'); ?></code>
Kesimpulan DateTimeZone
DateTime
Soalan Lazim (Soalan Lazim)
Soalan Lazim berikut memberikan panduan lanjut mengenai tugas-tugas yang berkaitan dengan zon waktu biasa dalam PHP:
Menetapkan zon waktu lalai: Gunakan date_default_timezone_set('America/New_York');
Mendapatkan zon waktu semasa: Gunakan echo date_default_timezone_get();
Penyenaraian TimeZones Tersedia: Gunakan $timezones = DateTimeZone::listIdentifiers(); print_r($timezones);
Menukar antara zon waktu: Gunakan DateTime
dan DateTimeZone
objek untuk menukar zon waktu DateTime
objek.
Pengendalian Waktu Penjimatan Daylight (DST): php's DateTime
dan DateTimeZone
kelas secara automatik mengendalikan DST.
Tarikh dan masa pemformatan: Gunakan fungsi date()
.
tarikh parsing dari rentetan: Gunakan strtotime()
.
Membandingkan tarikh dan masa: Tukar ke cap waktu menggunakan strtotime()
dan bandingkan.
Menambah atau Mengurangkan Masa: Gunakan strtotime()
dengan ekspresi masa relatif (mis., '1 minggu').
pengendalian waktu zon dalam mysql: Gunakan $pdo->exec("SET time_zone=' 00:00'");
(ganti '00:00' dengan zon waktu yang anda inginkan).
Atas ialah kandungan terperinci Petua Pantas: Cara Mengurus TimeZones di PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!