Получить unix метку нового дня
к примеру:
сегодня 26.06.2018 в 00:00:00 unix число было таким 1529971200
Вопрос:
есть ли стандартная функция которая показывала бы unix метку нового дня? если нет, может у кого то есть готовое решение? прошу поделиться!
Мне данная задача нужна для введения статистики уникальных посещений. ip + дата
У вопроса есть решение - Посмотреть?
Ответы - Получить unix метку нового дня / Получить unix метку нового дня
Является ответом!


практически, вот только ваше решение показывает unix метку -3 GMT

мое решение показываает метку с учетом часового пояса в настройках php

на сколько я знаю unix по умолчанию показывает 0 GMT вне зависимости от настроек сервера. разве не так?

значение timestamp в вопросе говорит, что автора интересует когда полночь в UTC¶ mktime() принимает местное время, которое может отличаться от UTC (любая часовая зона с ненулевым UTC сдвигом). Можно поискать аналог timegm функции (обратная к gmtime()). В питоне решение выглядит как:
DT.datetime(2018,6,26, tzinfo=DT.timezone.utc).timestamp()
— можно аналог в php поискать.

@jfs
DateTime::setTimezone()
, либо выставлять TZ перед вызовом mktime
и восстаналивать. Либо как в соседнем ответе strtotime
указывать с зоной.


26.06.2018 12:57:13
Чтобы получить Unix время соответствующее полночи в UTC для указанной даты, можно gmmktime() функцию использовать:
echo gmmktime(0,0,0,6,26,2018);
1529971200
Помочь в развитии проекта: