Как определить, какому временному интервалу принадлежит текущее время?
Есть некие блоки данных, привязанные к определенному времени. Скажем, данные для 04:00, 10:00, 16:00, 22:00. И так посуточно. Как определить, что текущее время 01:47 - ближе к 04:00, но уже к 04:00 следующего дня?
Ладно, объясняю на пальцах: на руке 5 пальцев. 8-й палец к какой руке относится, к 1-й или ко 2-й? Решение: 8 делим нацело на 5 - получаем 1 (число целых рук) и 3 в остатке (количество посчитанных пальцев на 2-й руке). В сутках 86400 секунд. Аналогия ясна? Только время в Unix Timestamp надо перевести (количество секунд с 01.01.1970).
Добавить доп интервал = первый интервал + 24 часа (28 часов в вашем случае).
Получить число секунд с начала суток.
Определить ближайший интервал.
Если найденный интервал - последний. То значит перешли на следующие сутки.