2013-03-12 76 views
2

我有一個DateTime對象,並與下面的獲取時間:PHP:改變UTC時間太平洋(PST/PDT)

$today = date('Y-m-d H:i:s', $temp['date']->getTimeStamp()); 

我希望能夠將此轉換爲加州的當前時間,但我需要考慮PST和PDT的時間偏移量。根據一年的時間不同,可能爲-7或-8小時。如何在正確的太平洋時間動態獲取$today

+0

我來到這裏希望要知道在PST/PDT的PHP中的正確時區名稱,我沒有我的答案,重複沒有給它,因爲它是爲中央時區。所以我不同意這個副本 – 2014-07-17 15:07:16

回答

1

您可以簡單地使用的strtotime更改時區,這樣的:

date_default_timezone_set('Etc/GMT'); //Make sure the time is GMT 
$today = date('Y-m-d H:i:s'); 

echo $today."\n"; 

$today_utc = date('Y-m-d H:i:s', strtotime($today." GMT+3")); 

echo $today_utc."\n"; 

$today_9 = date('Y-m-d H:i:s', strtotime($today." GMT-9")); 

echo $today_9; 

演示:http://sandbox.onlinephpfunctions.com/code/f08c0c69b415464bbee68fd1cdaaf1e7f4f1872b你的情況

所以,你的代碼可能是:

$today = date('Y-m-d H:i:s', $temp['date']->getTimeStamp()); 
$today = date('Y-m-d H:i:s', strtotime($today." GMT-9")); 
相關問題