Разница дат только с учетом года, месяца, дня

0

Я хочу рассчитать разницу дат только с учетом года, месяца и дня в php. Теперь программа вычисляет разницу дат, учитывая все параметры объекта времени даты.

$DTObj = new DateTime();
$pdate = DateTime::createFromFormat("ymd", 141118);
$diff = $DTObj->diff($pdate);
$dday = $diff->format("%a");

Как я могу это достичь.

  • 0
    Вместо $ DTObj = new DateTime (); использовать $ DTObj = date_create (date ('Ymd'));
  • 0
    @Ananth: не делай этого! Используйте ключевое слово «сегодня» при создании объекта DateTime, где вам нужно время 00:00:00.
Показать ещё 1 комментарий
Теги:
datetime
date

1 ответ

1

Прочитайте и попробуйте следующее:

# create DateTime object with time at 00:00:00
$from = new DateTime('today'); 

# create DateTime object from ymd format
# format character ! resets all fields (year, month, ...) to the Unix Epoch and then sets the inputed date
$to = DateTime::createFromFormat('!ymd', '141118');

# calculate difference between $from and $to and return DateInterval object
$diff = $from->diff($to);

# echo difference of total number of days
echo $diff->format('%a');

demo

Ещё вопросы

Сообщество Overcoder
Наверх
Меню