@RomanGorbatko
PHP, Python, NodeJS, Swift

Принадлежность времени к текущему календарному дню?

Задача.
Узнать, принадлежит ли указанное время к текущему дню, без учета прошедшего времени.
Если принадлежит - выводить время. Если нет - выводить время и дату следующего календарного дня.

Пример 1:
Указанное время - 20:21. Текущее время 18:13. Указанное время больше текущего - принадлежит.

Пример 2: Указанное время - 07:21. Текущее время 18:13. Указанное время меньше текущего - не принадлежит. Выводим дату следующего дня.

Мое решение показалось мне слишком сложным. Я решил експлодом разбивать значения времени, и с кучей условий проверять каждое значение.

Интересует, есть ли более правильное решение это задачи.
  • Вопрос задан
  • 2267 просмотров
Пригласить эксперта
Ответы на вопрос 3
Melkij
@Melkij
PostgreSQL DBA
$rTargetTime = \datetime::createFromFormat('H:i', '23:45');
$bIsToday = $rTargetTime > new \datetime();

?
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
$time = '22:33';
$now = new \DateTime();
$time = new \DateTime(sprintf('%s %s:00', $now->format('Y-m-d'), $time));

$isTomorrow = $now->getTimestamp() > $time->getTimestamp();
Ответ написан
Комментировать
OlegLazarenko
@OlegLazarenko
$time = strtotime('18:36');
$date = (time() > $time) ? date('d.m', $time + 86400) : date('d.m');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы