基本上我的網站是全球性的,我需要能夠檢測用戶的時區並顯示準確的時間。我有這個非常整潔的腳本,以前一直很完美地工作。它需要一個時區偏移量,我用JavaScript獲取並通過一個cookie。timezone_name_from_abbr()沒有正確識別
if(!empty($_COOKIE['tz']) && $_COOKIE['tz']>=-12 && $_COOKIE['tz']<=13){
$offset = $_COOKIE['tz'];
$tz = timezone_name_from_abbr(null, $offset * 3600, true);
if($tz === false) $tz = timezone_name_from_abbr(null, $offset * 3600, false);
date_default_timezone_set($tz);
}else{
date_default_timezone_set('UTC');
}
的問題是,我目前在測試時區爲歐洲/赫爾辛基,這是UTC + 2(無夏令),但由於某種原因timezone_name_from_abbr()
決定2 * 3600歐洲/巴黎。我對日期和時區非常不滿,我非常需要幫助!