PHP DateTime::format()返回错误的1995年日期
我有一个时间戳,像812671200。说现在是1995年3月10日00:00。好的 但如果我想用PHP将其格式化如下:PHP DateTime::format()返回错误的1995年日期,php,date,datetime,timezone,timestamp,Php,Date,Datetime,Timezone,Timestamp,我有一个时间戳,像812671200。说现在是1995年3月10日00:00。好的 但如果我想用PHP将其格式化如下: $date = new DateTime(); $date->setTimestamp(812671200); $date->setTimezone(new DateTimeZone('Europe/Berlin')); // my timezone echo $date->format('m/d/Y H:i:s'); 上面写着:10/02/1995 23:
$date = new DateTime();
$date->setTimestamp(812671200);
$date->setTimezone(new DateTimeZone('Europe/Berlin')); // my timezone
echo $date->format('m/d/Y H:i:s');
上面写着:10/02/1995 23:00:00使用“UTC”作为时区返回:10/02/1995 22:00:00 我在维基百科上读到,1996年DST改为10月的最后一个星期日,所以我尝试了不同的时间戳,比如上周六,1995年9月的星期日,它们的格式很好,但是1995年9月的最后一个星期日之后的星期一的格式不正确 1981-1995年3月最后一个星期日至9月最后一个星期日。
自1996年3月最后一个星期日至10月最后一个星期日 这是PHP的问题还是我做错了什么?
非常感谢你的帮助。谢谢 首先设置时区,然后再设置它将时间从默认的TZ转换为TZ。在1995年10月。在那一年,DST从3月26日开始,到9月24日结束。因此,10月份它不在DST,偏移量为+01:00(比UTC提前一小时)。因此,该值是正确的:812671200是
1995-10-02T22:00 UTC
和1995-10-02T23:00+01:00(柏林)
:首先设置时区,然后设置它将时间从默认的TZ转换为时间。1995年10月。在那一年,DST从3月26日开始,到9月24日结束。因此,10月份它不在DST,偏移量为+01:00(比UTC提前一小时)。因此该值是正确的:812671200是1995-10-02T22:00 UTC
和1995-10-02T23:00+01:00(柏林)
: