我有一個應用程序,用戶輸入時間/日期,然後通過strtotime()轉換成Unix時間戳(用戶設置自己的時區)。這通常工作得很好; strtotime甚至設法將諸如2014年3月9日2:15 AM之類的時間轉換爲時間戳(其對應於如果用戶輸入「2014年3月9日上午3:15」將返回的時間戳)。PHP strtotime和DST
但是,例如,用戶想要輸入2014年11月2日上午的時間 - 具體地說,在2點到3點之間。是否有一個元素,用戶可以添加到指定哪個時間將被使用?
例如,如果用戶通過strtotime()通過'2014年11月2日2:15',則結果是與該日期的「second」2:15對應的UNIX時間戳。
如何指定「第一個」2:15?
我建議你使用'DateTime'和'DateTimeZone'類而不是'strtotime()' – Phil 2014-10-30 02:37:55
對不起,這個天真的問題,但我不知道這對用戶會有用嗎?我意識到我最初的帖子有點不清楚,所以我編輯了它。目前,該應用程序接受來自用戶的輸入,例如2014年11月2日2:15 AM。有沒有一個字符串*用戶*(不是編碼器,因爲我在我的OP中寫錯了)可以輸入來告訴程序*他們打算使用哪個*「2:15」?或者這是我不得不使用DateTime的東西嗎?再次,對於混淆抱歉! – user3092995 2014-10-30 02:58:04
這基本上沒有解決方案。 11月2日凌晨2點15分有兩個。在這段時間裏你什麼也不做,除非你不介意可能要等一個小時。這就是爲什麼切換髮生在週末深夜,以減少這種情況導致的問題最小化。在我意識到的現實世界的任何地方都沒有官方的解決方案。 – deceze 2014-10-30 03:08:53