Mendapatkan Zon Masa Semasa Pelayan MySQL
Dalam MySQL, terdapat fungsi yang membantu anda mendapatkan semula tetapan zon waktu semasa untuk kedua-dua global dan konfigurasi khusus pelanggan. Begini cara anda boleh menggunakannya:
mysql> SELECT @@global.time_zone, @@session.time_zone;
Walau bagaimanapun, menggunakan kaedah ini boleh menghasilkan "SYSTEM" sebagai nilai yang dikembalikan, yang menunjukkan bahawa MySQL dikonfigurasikan untuk menjajarkan dengan zon waktu sistem.
Mengambil semula Zon Masa Menggunakan PHP
Jika "SISTEM" pemegang tempat dikembalikan, anda boleh memanfaatkan PHP untuk mendapatkan zon waktu yang digunakan oleh sistem pelayan melalui fungsi date_default_timezone_get.
<?php // Get the system's time zone $timeZone = date_default_timezone_get(); echo "System time zone: $timeZone"; ?>
Pertimbangan untuk Zon Masa Data Pangkalan Data
Adalah penting untuk ambil perhatian bahawa MySQL menyimpan nilai tarikh dan masa tanpa memasukkan maklumat zon waktu. Ini menunjukkan bahawa:
mysql> CREATE TABLE foo (timestamp DATETIME) ENGINE=MyISAM; mysql> INSERT INTO foo (timestamp) VALUES (NOW()); mysql> SET time_zone = '+01:00'; mysql> SELECT timestamp FROM foo; | timestamp | | ---------------------- | | 2010-05-29 08:31:59 | mysql> SET time_zone = '+02:00'; mysql> SELECT timestamp FROM foo; | timestamp | | ---------------------- | | 2010-05-29 08:31:59 | <== No change
Walaupun zon waktu pelayan telah ditukar, cap waktu yang disimpan tetap sama. Ini kerana cap masa dalam MySQL tidak sedar zon waktu asli.
Amalan Terbaik untuk Pengurusan Zon Masa
Untuk mengekalkan integriti data, adalah penting untuk mematuhi cadangan berikut :
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan dan Mengurus Tetapan Zon Waktu Pelayan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!