php strtotime с будущим datetime возвращает временную метку меньше текущей временной метки

Я запускаю php на моем сервере. Документы для StrToTime Функция сообщает, что попытается проанализировать строку даты в метку времени Unix (количество секунд с 1 января 1970 года 00:00:00 UTC).

Итак, мой тестовый сценарий:

Отметка времени для строки «2018-05-15 14:30»: 1526387400 => strtotime («2018-05-15 14:30»)

Текущее время по Гринвичу 2018-05-15 13:26 : 1526390790 => время ()

Здесь я ожидал, что отметка времени в 14:30 будет больше 13:26. Но, несмотря на будущую строку даты, значение меньше текущей отметки времени.

Сервер, который я тестирую, работает по GMT + 2 timezone = date (‘Z’) => 7200.
Я предполагал, согласно документам, StrToTime функция для возврата секунды, прошедшей с эпохи, без учета смещения часового пояса. Я не уверен, что смещение часового пояса портит цифры.

Любое понимание этого было бы очень полезно.

0

Решение

От strtotime() руководство

Каждый параметр этой функции использует часовой пояс по умолчанию, если в этом параметре не указан часовой пояс. Будьте осторожны, чтобы не использовать разные часовые пояса в каждом параметре, если это не предусмотрено.

От time() руководство

Возвращает текущее время, измеренное в секундах с начала эпохи Unix (1 января 1970 г., 00:00:00 по Гринвичу).

Таким образом, ваш strtotime () в GMT + 2, а time () в GMT

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]