我有以下函數用於獲取正確的時間並用於我的網站。 不幸的是,它不檢查夏時制並導致時間錯誤。我想知道是否有人會有一個可能的解決方案或幫我解決我的問題?PHP夏時制時間問題
我對PHP編程非常陌生,但我仍然對此很感興趣。如果有人能夠幫助我,讓它能夠在未來自動切換,這將非常有幫助。
下面是函數:
function getDSTDifference() {
$timezone = date_default_timezone_get();
$newTZ = new DateTimeZone($timezone);
$trans = $newTZ->getTransitions();
$offset = $trans[0]['offset'] /60 /60;
return $offeset;
}
---編輯---
爲了更好地澄清一下,我想說:
我有一個網站,呼叫監控倍。在DST和常規時間之間切換期間,這些通話時間會關閉一小時(反之亦然)。例如,這個過去的週末引起了這樣的時間:-57:01:23
。而不是像現在這樣 - 我必須在每次DST和定時時間切換時手動進入並取消註釋/註釋掉兩行代碼,是否有可能的解決方案使功能能夠做到這自動?有點像更永久的解決方案。對我而言,似乎冗餘編碼必須不斷重新審視該功能,以便一次又一次地做出簡單的改變。再次,我之前沒有做過很多關於PHP代碼的工作,因此我不熟悉可以使用的函數,或者我必須自己創建這些函數。如果任何人有這方面的信息/幫助,這將是非常感激。
function getDSTDifference() {
$timezone = date_default_timezone_get();
$NewTZ = new DateTimeZone($timezone);
$transition = $NewTZ->getTransitions();
$offset = $transition[0]['offset'] /60 /60;
//The following two lines need to be commented out when it is
//daylight savings time
//They need to be uncommented when Daylight Savings Time ends
$dst = $transition[0]['isdst'];
$offset = $offset - $dst;
return $offset;
}
希望這樣做更有意義! 在此先感謝您的幫助!
應該做的功能是什麼?我誠實地不能從當前的代碼中推導出它,而且你的文本描述非常模糊。 –
'echo $ timezone;'的輸出是什麼? – geomagas
看看這個答案=> http://stackoverflow.com/questions/1586552/how-to-tell-if-a-timezone-observes-daylight-saving-at-any-time-of-the-year – PlantTheIdea