如何在PHP中返回正确的时区

时间:2016-11-08 19:03:38

标签: php wordpress timezone

我有以下PHP日期函数,它返回“UTC”作为时区。我需要它以适当的方式返回美国/纽约的时区 EST EDT

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插件的一部分,其目的是在头部容器中插入元标记,以反映WP Post上次更新的日期和时间。

1 个答案:

答案 0 :(得分:1)

首先将默认时区定义为America/New_York,然后您可以使用RFC850以所需格式显示日期

  

DATE_RFC850

     

这是RFC850的格式,它定义了USENET消息的标准。 PHP格式为“l,d-M-y H:i:s T”,日期(DATE_RFC850)的示例输出为“Sunday,14-Aug-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 =