За последние 24 часа нас посетили 19790 программистов и 1696 роботов. Сейчас ищут 1808 программистов ...

Который час, если timestamp равен 0?

Тема в разделе "MySQL", создана пользователем radistao, 15 сен 2009.

  1. radistao

    radistao Активный пользователь

    С нами с:
    22 янв 2009
    Сообщения:
    26
    Симпатии:
    0
    Добавляю в поле TIMESTAMP даты. При этом заметил, что разница при добавлении средствами My_SQL и PHP с реальными секундами составляет 3 часа (т.е. FROM_UNIXTIME( 0 ) = '1970-01-01 03:00:00'). При этом, UNIX_TIMESTAMP('1970-01-01 03:00:00')=0 (и равно 0 для любого времени, меньше 03:00:00)
    Ради интереса попробовал
    [sql]FROM_UNIXTIME(UNIX_TIMESTAMP('1970-01-01 00:00:00'))[/sql]
    и получил '1970-01-01 03:00:00'

    этот эффект одинаковен на локальном сервере и на хостинге

    В чем прикол?
     
  2. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.339
    Симпатии:
    44
    В часовых поясах, наверно
     
  3. radistao

    radistao Активный пользователь

    С нами с:
    22 янв 2009
    Сообщения:
    26
    Симпатии:
    0
    Так и есть. Разобрался.
    Правильный ответ: 0 часов по Гринвичу!
    Оказывается, mySQL в функции FROM_UNIXTIME учитывает часовой пояс сервера и, возможно, летне-зимнее время. Таким образом, когда timestamp=0, то по Гринвичу 0 часов, а по моему поясу - 3 часа (летнее время).

    Тема закрыта.
     
  4. kostyl

    kostyl Guest

    radistao
    э нет уж, теперь по новой традиции надо все дословно описать и пояснить, иначе бан!!!
     
  5. radistao

    radistao Активный пользователь

    С нами с:
    22 янв 2009
    Сообщения:
    26
    Симпатии:
    0
    меня как бы бан не пугает, но я не знаю, как еще проще объяснить то, что я уже написа. это если бы я сказал просто: "я разобрался, а вы хер", но, на сколько я вижу, MiksIr ответил на вопрос, а я пояснил ответ.
    Более того, как был сформвлирован вопрос?
    на него был дан вполне конкретный ответ:
    Чего еще более?
    Ладно, хватить писть, а то скажут: "за флуд - бан"
     
  6. TheShock

    TheShock Активный пользователь

    С нами с:
    30 май 2009
    Сообщения:
    1.255
    Симпатии:
    0
    Адрес:
    Київ
    radistao. тебя подъебнули из-за того, что раскидываешься указаниями как модер, забей :)
     
  7. kostyl

    kostyl Guest

    radistao
    да. шутка это, шутка.