PEARライブラリのDateは危険
リビジョン1.13までのTimeZoneクラスはinDaylightTime()で
putenv("TZ=".$env_tz)
を無条件に実行する。
http://cvs.php.net/viewvc.cgi/pear/Date/Date/TimeZone.php?revision=1.1&view=markup
リビジョン1.14で
if ($env_tz != '') { putenv('TZ=' . $env_tz); }
に変更され、リビジョン1.17で環境変数TZを設定する暴挙をあらため、全面書き直しされている。
PEARライブラリの(リビジョン1.52までの)Dateクラスのcompare()は、convertTZ()、getOffset()を経由して、上記のinDayLightTime()をコールする。
PHPって糞。