Подтвердить что ты не робот

Как найти временную метку unix для начала следующего дня в php?

У меня есть временная метка unix для текущего времени. Я хочу получить временную метку unix для начала следующего дня.

$current_timestamp = time();
$allowable_start_date = strtotime('+1 day', $current_timestamp);

Как я делаю это сейчас, я просто добавляю 1 целый день в timestamp unix, когда вместо этого я хотел бы выяснить, сколько секунд осталось в этот текущий день, и добавьте только столько секунд, чтобы получите отметку unix в первую минуту следующего дня.

Каков наилучший способ сделать это?

4b9b3361

Ответ 1

Самый простой способ просто " сделать" это время:

$tomorrowMidnight = mktime(0, 0, 0, date('n'), date('j') + 1);

Цитата:

Я хотел бы выяснить, сколько секунд осталось в этот текущий день, и добавьте только столько секунд, чтобы получить отметку времени unix в первую минуту следующего дня.

Не делай этого так. Избегайте относительных вычислений, когда это возможно, особенно если это так тривиально "абсолютно" получить метку времени без секундной арифметики.

Ответ 2

Вы можете легко добраться завтра до полуночи с:

$tomorrow_timestamp = strtotime('tomorrow');

Если вы хотите иметь возможность делать переменное количество дней, вы можете легко сделать это так:

$days = 4;
$x_num_days_timestamp = strtotime(date('m/d/Y', strtotime("+$days days"))));

Ответ 3

$tomorrow = strtotime('+1 day', strtotime(date('Y-m-d')));
$secondsLeftToday = time() - $tomorrow;

Ответ 4

Что-то простое:

$nextday = $current_timestamp + 86400 - ($current_timestamp % 86400);

- это то, что я использовал.

Ответ 5

Начало следующего дня рассчитывается следующим образом:

<?php

$current_timestamp = time();
$allowable_start_date = strtotime('tomorrow', $current_timestamp);

echo date('r', $allowable_start_date);

?>

Если вам нужно выполнить свое особое требование:

<?php

$current_timestamp = time();
$seconds_to_add = strtotime('tomorrow', $current_timestamp) - $current_timestamp;

echo date('r', $current_timestamp + $seconds_to_add);

?>

Ответ 6

Мой вариант:

 $allowable_start_date = strtotime('today +1 day');