Note that getTimestamp() does not return the UTC timestamp. It returns the timestamp relative to the set timezone, or the default server timezone. This also applies to dates in timezones with Daylight Savings.
<?php
$d1 = new DateTime('2016-03-11 11:00:00', new DateTimeZone('Europe/Rome'));
$t1 = $d1->getTimestamp();
$d2 = new DateTime('2016-04-11 11:00:00', new DateTimeZone('Europe/Rome'));
$t2 = $d2->getTimestamp();
printf("11 March: %d (diff = %d less)\n", $t1, 1457694000 - $t1);
printf("11 April: %d (diff = %d less)", $t2, 1460372400 - $t2);