我有一個PHP頁面和一個數據庫中,我瞭解以下內容:與時區計算時差
- 服務器時間(服務器上運行PHP & DB)
- 用戶時區
- 日期/事件的時間存儲在數據庫中
我的系統允許用戶取消一個事件(蓋上一定的時間),並且我需要確定事件是否在12小時內基於用戶的時間當前時區。例如,假設我有以下幾點:
- 服務器時間(GMT):2017年7月1日@ 3:30 PM
- 用戶的時區:(GMT -7:00)山地時間(美國&加拿大)事件的
- 日期/時間:2017年7月1日@ 8:30 PM(山地時間)
什麼是PHP的公式來計算基於用戶的當前時間和事件時間之間的時間他們已知的時區?注意:我們在不同時區有很多用戶,但我們知道他們的時區,因爲我們將其存儲在每個用戶的數據庫記錄中。爲了解決這個問題,我們首先需要通過計算服務器時間和他們的時區來計算用戶的當前時間。然後我們需要在當前時間和事件時間之間進行減法。
我正在存儲的時區值是這種格式的小數:-7.0
(即山區時間,比格林尼治標準時間晚7小時)。無論發生什麼時區計算都需要能夠取得像這樣的小數。
這是什麼PHP代碼?
在StackOverflow上,你需要編寫自己的代碼,如果有什麼不工作,我們會很樂意幫你修復它,但是你需要自己研究和編寫大部分代碼。 – Qirel
查看[IntlCalendar](http://php.net/manual/en/class.intlcalendar.php),如果可以的話就使用它! – Code4R7