2016-11-08 31 views
4

我有以下的PHP日期函數,它返回「UTC」的時區。我需要它返回的時區,美國/紐約要麼ESTEDT適當。如何返回正確的時區在PHP

date('D, d M Y H:i:s T');

它返回:週四,2015年10月8日16:48:00 UTC

我需要它返回星期四,2015年10月8日16:48:00 EDT

修正。

這裏是我完整的PHP代碼行:

date_default_timezone_set('America/New_York'); 
echo '<meta http-equiv="last-modified" content="' . date('D, d M Y H:i:s T', strtotime(get_the_date() .' ' . get_the_time())) . '" />' . "\n"; 

這是一個WordPress插件,其目的是插入一個meta標籤的頭容器以反映日期和時間WP帖最後一部分更新。

+0

設置調用日期之前的時區() – GordonM

+0

[組時區](http://php.net/manual/en/function.date-default-timezone-set.php)然後cal升日期 –

+1

'$ estTime =(新日期時間( '美國/紐約')) - >格式( 'H:I:S:U');':http://stackoverflow.com/a/22393061/1158599 –

回答

1

默認時區到America/New_York的限定第一然後可以使用RFC850顯示日期在所需的格式

DATE_RFC850

這是RFC850的格式定義了標準USENET消息。 PHP格式爲「l,d-M-y H:i:s T」,日期範例輸出(DATE_RFC850)爲「星期日,14 - 08 - 05 16:13:03 UTC」。用法

date_default_timezone_set('America/New_York'); 
$a = strtotime('2015-08-11 16:48:00'); 
print date(DATE_RFC850, $a); 

// output 
Tuesday, 11-Aug-15 16:48:00 EDT 

Working demo

很可能也添加默認時區在php.ini

[Date] 
; Defines the default timezone used by the date functions 
; http://php.net/date.timezone 
; date.timezone =