As I like DateTime, DateInterval and DatePeriod, here is my solution:
$start = new DateTime();
$end = new DateTime();
$start->setTimestamp(1330581600);
$end->setTimestamp(1333170000);
$period = new DatePeriod($start, new DateInterval('P1D'), $end);
foreach($period as $dt) {
echo $dt->format('Y-m-d');
echo PHP_EOL;
}
It seems like this is confusing at first, but this is a very logical approach.
DatePeriod 1 ( DateInterval), .
, DateTime, DateTime::format()