Zon masa ialah konsep geografi yang menentukan masa di setiap lokasi tertentu. Apabila kita menulis aplikasi PHP, terdapat banyak situasi di mana kita perlu mengubah suai tetapan zon waktu. Ini kerana zon waktu lalai yang digunakan oleh PHP ialah Waktu Universal Selaras (UTC), bukan waktu tempatan di rantau kita.
Jadi, bagaimana untuk menukar zon waktu dalam PHP? Seterusnya, kami menerangkan proses secara terperinci.
Sebelum menukar zon waktu, anda mesti menentukan tetapan zon waktu PHP semasa. Anda boleh menggunakan fungsi date_default_timezone_get()
untuk melihat zon waktu semasa. Kod sampel adalah seperti berikut:
echo date_default_timezone_get(); // 输出 UTC
Kod ini akan mengeluarkan zon waktu semasa yang ditetapkan kepada UTC.
Fungsi date_default_timezone_set()
dalam PHP boleh digunakan untuk menukar tetapan zon waktu. Fungsi ini menerima parameter rentetan untuk zon waktu. Berikut ialah beberapa contoh:
// 设置时区为东八区,即北京时间 date_default_timezone_set('Asia/Shanghai'); // 设置时区为美国纽约时间 date_default_timezone_set('America/New_York'); // 设置时区为欧洲巴黎时间 date_default_timezone_set('Europe/Paris');
Senarai lengkap zon waktu boleh didapati dalam dokumentasi rasmi PHP.
Kadangkala, kita hanya perlu menukar tetapan zon waktu dalam bahagian tertentu skrip dan bukannya menetapkannya secara global. Dalam kes ini, anda boleh menggunakan versi tempatan fungsi date_default_timezone_set()
, fungsi date_timezone_set()
. Fungsi ini menerima objek DateTime
dan hujah rentetan zon masa. Berikut ialah contoh:
$date = new DateTime('now', new DateTimeZone('America/New_York')); echo $date->format('Y-m-d H:i:s'); // 输出纽约当前时间 // 将时区更改为东八区(北京时间) date_timezone_set($date, new DateTimeZone('Asia/Shanghai')); echo $date->format('Y-m-d H:i:s'); // 输出北京当前时间
Selain menggunakan fungsi date_default_timezone_set()
, anda juga boleh menggunakan berfungsi untuk menetapkan zon waktu. Kaedah ini menyimpan tetapan zon waktu dalam fail konfigurasi PHP, php.ini. Berikut ialah contoh: ini_set()
ini_set('date.timezone', 'Asia/Shanghai');
Atas ialah kandungan terperinci Bagaimana untuk menukar zon waktu dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!