我目前正在將國際化支持添加到用PHP編寫的系統中。所有日期現在都存儲爲UTC,並根據個人用戶本地化偏好進行顯示。接受國際日期時間輸入php
然而當用戶輸入的日期時間(如指定一個特定時間窗),它們被輸入解釋爲UTC日期時間,而不是他們本地的日期時間的日期時間。爲了完成國際化,系統需要假定用戶輸入的日期時間是指當地時間。
如何轉換日期字符串(即 'YYYY-MM-DD HH:MM')爲Unix時間戳正確的定位?
- 進一步明確 - 在數據庫中的所有日期= UTC時間戳 所有的HTML頁面顯示用戶本地時間(在其設置中定義) HTML表單有默認爲當前本地時間 PHP必須把該日期時間日期當地沒有UTC PHP必須在此日期本地TIMESTRING轉換爲UTC時間戳
那麼你的問題沒有一個非常直接的答案。您需要將用戶GMT存儲在數據庫中,這樣就可以使用它的時間轉換 – 2012-01-18 11:49:54
退房的本地時間()函數在PHP網站上http://php.net/manual/en/function.localtime.php – CBusBus 2012-01-18 11:51:07
@ yankitwizzy也許我不清楚。是的,我將時間戳存儲爲UTC。根據定義,時間戳始終是UTC。這已經很好了。我遇到的問題是在用戶本地化中接受用戶輸入。 – AntonChanning 2012-01-18 15:36:11