<?php
$startDate = new \DateTime();
$startDate->setDate(2014, 01, 30);
$startDate->setTime(0, 0, 0);
var_dump($startDate);
$nextMonth = clone $startDate;
$nextMonth->modify('+ 14 days');
$nextMonth->modify('last day of this month');
var_dump($nextMonth);
$startDate->add(new DateInterval(sprintf('P%dD', $startDate->format('t'))));
$startDate->sub(new DateInterval('P1D'));
$startDate->setTime(23, 59, 59);
while ($startDate >= $nextMonth) {
$startDate->sub(new DateInterval('P1D'));
}
var_dump($startDate);
$newDate = new \DateTime();
$newDate->setDate(2014, 02, 27);
$newDate->setTime(23, 59, 59);
var_dump($newDate->getTimestamp() == $startDate->getTimestamp());
preferences:
67.61 ms | 402 KiB | 5 Q