"date_default_timezone_set("Europe/Amsterdam")" gives you an offset of 3600 seconds for winter-time and 7200 in summer-time, and not 0 and 3600. don't be tricked by that.
DateTime::getOffset
(PHP 5 >= 5.2.0)
DateTime::getOffset — Returns the timezone offset
Return Values
Returns offset in seconds with respect to daylight saving time on success or FALSE on failure.
Examples
Example #1 Comparing offsets between Summer and Winter
<?php
date_default_timezone_set('Europe/London');
$winter = new DateTime('2008-12-25 14:25:41');
$summer = new DateTime('2008-07-14 14:25:41');
echo $winter->getOffset(); // Winter offset: 0
echo $summer->getOffset(); // Summer offset: 3600 = 1 hour
?>
DateTime::getOffset
erik at REMOVE_samson-it dot nl
18-Sep-2009 10:34
18-Sep-2009 10:34
