7

有一个示例代码

<?php
$dt = new \DateTime();
$dt->setTimezone(new \DateTimeZone('Europe/London'));

$timestamp = 1351383400;    
echo "$timestamp \n";

$dt->setTimestamp($timestamp);
echo $dt->getTimestamp();

它输出 2 个不同的时间戳1351383400(星期日,2012 年 10 月 28 日 01:16:40 +0100,就在 DST 切换之前)和1351387000(星期日,2012 年 10 月 28 日 01:16:40 +0000,1 小时后,在 DST 切换之后)

问题是如何让 Timestamp getter 返回与之前传递给 Timestamp setter 1 行的整数完全相同的整数?

PHP 5.3.6

4

1 回答 1

2

希望这可以帮助:

    $dt = new DateTime();
    $dt->setTimezone(new \DateTimeZone('Europe/London'));
    $timestamp = 1181503727;
    echo $timestamp . '<br />';

    $dt->setTimestamp($timestamp);
    echo $dt->format('U'); 

输出:1181503727 1181503727

于 2012-10-26T19:04:47.353 回答