Как сравнить части даты двух объектов Zend_Date? - PullRequest
5 голосов
/ 14 ноября 2011

Я бы хотел проверить, если Zend_Date datetime в тот же день.Как я могу это сделать?

$date1 = new Zend_Date('2011-11-14 10:45:00');
$date2 = new Zend_Date('2011-11-14 19:15:00');

1 Ответ

14 голосов
/ 14 ноября 2011
$date1 = new Zend_Date('2011-11-14 10:45:00');
$date2 = new Zend_Date('2011-11-14 19:15:00');
if ($date1->compareDay($date2) === 0) {
    echo 'same day';
}

Также см. Главу о Сравнение дат с датой отправки

В sidenote я настоятельно рекомендую вам проверить, есть ли у вас необходимость в Zend_Date.Не используйте его только потому, что он является частью ZF.Большая часть того, что делает Zend_Date, может быть достигнута быстрее и удобнее с помощью DateTime:

$date1 = new DateTime('2011-11-14 10:45:00');
$date2 = new DateTime('2011-11-14 19:15:00');
if ($date1->diff($date2)->days === 0) {
    echo 'same day';
}

РЕДАКТИРОВАТЬ после комментариев
Если вы хотите сравнить, является ли это одна и та же дата, просто сделайте

$date1->compareDate($date2)
...