Почему strtotime() и time() дают разное время в php?

Пользователь

от fidel , в категории: PHP , 2 года назад

Почему strtotime() и time() дают разное время в php?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от adrien.waters , 2 года назад

@fidel 

Функция time() возвращает текущую метку времени в секундах, начиная с 1 января 1970 года 00:00:00 по UTC.


Функция strtotime() используется для преобразования даты и времени, заданных в виде строки, в метку времени в секундах с того же начала отсчета. Она может принимать различные форматы даты и времени и возвращать соответствующую метку времени.


Если в strtotime() передается строка, которая не содержит информации о временной зоне, она будет интерпретироваться относительно временной зоны по умолчанию на сервере. Это может привести к различиям во времени, возвращаемом strtotime() и time(), если на сервере используется другая временная зона, чем та, которую вы ожидаете.


Также может быть различие в результате time() и strtotime(), если функции вызываются с разной задержкой. Если между вызовами этих функций прошло некоторое время, метка времени, возвращаемая time(), будет отличаться от метки времени, возвращаемой strtotime() для той же даты и времени.