PHP 时间戳慢一小时
PHP timestamp an hour slow
我正在开发一个用原版编写的古老系统 PHP。
我遇到了一些时间转换问题。
在下面的示例中,我希望时间戳和 "pretty date" 能够相互反映:
<?php
date_default_timezone_set( 'Europe/London' );
$timestamp = 1509062400; //Friday, October 27, 2017 12:00:00 AM
$date = new DateTime();
$date->setTimezone( new DateTimeZone( 'Europe/London' ) );
$date->setTimestamp( $timestamp + 3601 );
$date->setTime( 0, 0 );
echo $date->getTimestamp();
echo '<br/>';
echo $date->format( 'Y-m-d H:i:s' );
但是,当运行这个脚本在服务器上时,结果如下:
Timestamp: 1509058800
Pretty Date: 2017-10-27 00:00:00
漂亮的日期表示 10 月 27 日 00:00,但时间戳(根据 epochconvertor)表示 10 月 26 日 23:00。
我不确定为什么时间戳慢了一个小时。有人可以帮忙吗?
如果您在伦敦,那么您的时间戳可能是英国夏令时。纪元将采用格林威治标准时间。 BST 比 GMT 早一小时。
我正在开发一个用原版编写的古老系统 PHP。
我遇到了一些时间转换问题。
在下面的示例中,我希望时间戳和 "pretty date" 能够相互反映:
<?php
date_default_timezone_set( 'Europe/London' );
$timestamp = 1509062400; //Friday, October 27, 2017 12:00:00 AM
$date = new DateTime();
$date->setTimezone( new DateTimeZone( 'Europe/London' ) );
$date->setTimestamp( $timestamp + 3601 );
$date->setTime( 0, 0 );
echo $date->getTimestamp();
echo '<br/>';
echo $date->format( 'Y-m-d H:i:s' );
但是,当运行这个脚本在服务器上时,结果如下:
Timestamp: 1509058800
Pretty Date: 2017-10-27 00:00:00
漂亮的日期表示 10 月 27 日 00:00,但时间戳(根据 epochconvertor)表示 10 月 26 日 23:00。
我不确定为什么时间戳慢了一个小时。有人可以帮忙吗?
如果您在伦敦,那么您的时间戳可能是英国夏令时。纪元将采用格林威治标准时间。 BST 比 GMT 早一小时。