End Of British Summer Time Showing Twice On Calendar

Hi All
I’ve written a simple calendar that shows the next 7 days from todays date.
Works find except this Sunday is shown twice, I’m guessing its because British Summer Time is over.
How can I check for this and correct the error

for($i =0; $i<7; $i++)
{
$time = 86400 * $i;
$newTime = $todayNow + $time;

$dateDay = date('D', $newTime) ;
$dateNum = date('j', $newTime) ;
$dateMonth = date('M', $newTime) ;

echo("&lt;td bgcolor='#F6851F' span class='create_slots_header' align='center'&gt;$dateDay $dateNum $dateMonth&lt;/span&gt;&lt;/td&gt;");
// grab day and match with timeslot details for start and finish time
}

Use relative dates instead.

for($i = 0; $i < 7; $i++) {
 echo("<td bgcolor='#F6851F' span class='create_slots_header' align='center'>".date('D j M',strtotime("+".$i." days"))."</span></td>");
}

You may also want to check out the DateTime class in PHP.