Mkulya
@Mkulya

Функция «strtotime» или как получить начало суток PHP?

Здравствуйте друзья!

Мне нужно вначале суток обработать данные прошедших суток. Вечером и ночью strtotime('now 00:00:00') показывало 2019/06/03 - 00:00 прибавил 86400 и вроде всё стало в порядке 2019/06/04 - 00:00, а вот сегодня смотрю - этот код отображает 2019/06/05 - 00:00, то есть в течении сегодняшних суток - разные результаты.

Вопросы:
Почему такое происходит, такое ощущение что функция за начало суток не 00:00 считает?

Как можно гарантировано получить начало суток, чтобы обработать данные за прошедшие сутки?
  • Вопрос задан
  • 246 просмотров
Решения вопроса 2
uDenX
@uDenX
PHP Developer
Проще использовать DateTimeInteface

$currentDate = new DateTimeImmutable();

$startCurrentDate = $currentDate->setTime(0, 0);
$nextDay          = $startCurrentDate->add(new \DateInterval('P1D'));
Ответ написан
Комментировать
index0h
@index0h
PHP, Golang. https://github.com/index0h
echo (new \DateTimeImmutable('midnight'))->format('Y-m-d H:i:s');


Вероятней всего вы запуск выполняете уже в следующих стуках, так как функция генерирует данные, зависящие от текущего времени. Как вариант можете запуск производить например в первую минуту суток.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы