
我有一個腳本,允許用戶向資料庫提交數據,當提交數據時,還會添加時間戳,我的本地時區是 GMT,我的伺服器時間也是設定為 plesk 11,但是當數據進入其由於夏令時,晚了一個小時。
解決這個問題的最佳方法是什麼,我正在考慮將時區設定為 -1 小時,但這似乎有點骯髒。
答案1
最好的方法(恕我直言)是寫入 UTC 時間戳記。這始終是正確的,並且可以根據您的應用程式及其庫函數考慮的適當 DST 規則轉換為任何給定的時區。
答案2
使用本機系統時間(或將客戶端系統的時間轉換為資料庫伺服器使用的時間)有什麼問題?每個主要作業系統都原生處理時區 DST。 (即使 DST 規範發生變化,也會對相關作業系統進行修補以適應。)
答案3
如果您使用 NTP,如果您選擇的時區啟用了 NTP,它應該會自動將您的時鐘校正為 DST。
但我同意 SvW 的觀點。如果您和您的客戶位於不同時區,則 UTC 會更好。