Время UNIX записывает часовой пояс? - PullRequest
3 голосов
/ 17 мая 2010

Я хочу спросить о времени UNIX, записывает ли время UNIX часовой пояс?

Я перенес свой хостинг из Чикаго / Америка в JST.

Проблема в том, что вся моя база данных MySQL содержит записи о времени UNIX (часовой пояс Чикаго / Америка)

У меня есть PHP-код для отображения времени назад (например, 3 дня назад, вчера и т. Д.) Когда я перехожу на новый сервер, он говорит, что завтра

Чтобы избежать этого завтра, можно ли отключить сервер на один день для синхронизации с часовым поясом текущего сервера?

Я беспокоюсь, что время UNIX не только записывает дату и время, но и часовой пояс ...

Я могу установить часовой пояс PHP.ini, но замедлит ли он работу моего Apache?

Ответы [ 3 ]

5 голосов
/ 17 мая 2010

«0» во времени UNIX было 1 января 1970 года во времени UTC. Каждое время UNIX - это секунды с этой даты, времени и часового пояса.

1 голос
/ 17 мая 2010

'unix time' - это количество миллисекунд от эпохи, стандартное для всей нашей планеты Земля. часовой пояс затем используется как модификатор для этого времени.

0 голосов

POSIX 7 определяет его как (выделено мной):

Если год> = 1970 и значение неотрицательное, это значение связано с Всемирным координированным временем именем в соответствии с выражением на языке C, где tm_sec, tm_min, tm_hour, tm_yday и tm_year являются целочисленными типами:

tm_sec + tm_min*60 + tm_hour*3600 + tm_yday*86400 +
(tm_year-70)*31536000 + ((tm_year-69)/4)*86400 -
((tm_year-1)/100)*86400 + ((tm_year+299)/400)*86400

Таким образом, оно всегда относительно UTC и, следовательно, не кодирует информацию о часовом поясе.

Научил меня: https://stackoverflow.com/a/20035913/895245

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...