PEAR::Dateのサマータイム
ついでに、サマータイムの例です。ちゃんと考慮された結果が返ってきますね。
<?php error_reporting(E_ALL); require_once 'Date.php'; require_once 'Date/TimeZone.php'; /** * 現在時刻(JST) */ $now1 = new Date(time() - 60 * 60 * 24 * 30 * 3); $now2 = new Date(); var_dump($now1->getDate()); var_dump($now2->getDate()); /** * タイムゾーンを'Canada/Pacific'に変更 */ $now1->convertTZbyID('Canada/Pacific'); var_dump($now1->inDaylightTime() ? 'in Daylight Time' : 'not in Daylight Time'); var_dump($now1->getDate()); $now2->convertTZbyID('Canada/Pacific'); var_dump($now2->inDaylightTime() ? 'in Daylight Time' : 'not in Daylight Time'); var_dump($now2->getDate()); /** * 実行結果は以下のようになります。 * * '2006-08-24 16:27:07' (length=19) * '2006-11-22 16:27:07' (length=19) * 'in Daylight Time' (length=16) * '2006-08-24 00:27:07' (length=19) * 'not in Daylight Time' (length=20) * '2006-11-21 23:27:07' (length=19) */