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 ゲッターが 1 行前に Timestamp セッターに渡されたものとまったく同じ整数を返すようにするにはどうすればよいかということです。

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 に答える