- floor: documentation ( source)
<?php
$start_date = '2015-09-21';
$end_Date = '2016-09-21';
$date1 = new DateTime($start_date);
$date2 = new DateTime($end_Date);
$interval = $date1->diff($date2);
$weeks = floor(($interval->days) / 7);
for($i = 1; $i <= $weeks; $i++){
$date1->add(new DateInterval('P4D'));
echo $i." = ".$start_date." - ".$date1->format('Y-m-d')."\n";
$date1->add(new DateInterval('P3D'));
$start_date = $date1->format('Y-m-d');
}