За последние 24 часа нас посетил 33221 программист и 3410 роботов. Сейчас ищут 1097 программистов ...

Текущее время на PHP

Тема в разделе "PHP для новичков", создана пользователем Phantik, 31 янв 2010.

  1. Phantik

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

    С нами с:
    2 июл 2009
    Сообщения:
    163
    Симпатии:
    0
    Функции работы с текущим временем, типа getdate()
    Выводят системное время на 6 часов меньше.
    Системное время например 13:30:50 (в ТрейБаре Windows Vista). А функции выводят 7:30:50
    Неправильно выводятся только часы. Что тут может быть?
     
  2. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    date_default_timezone_set
    date_default_timezone_get
    date_timezone_set
    date_timezone_get
     
  3. Phantik

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

    С нами с:
    2 июл 2009
    Сообщения:
    163
    Симпатии:
    0
    Выводят Etc/GMT+3 Московское, как и надо.
     
  4. Phantik

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

    С нами с:
    2 июл 2009
    Сообщения:
    163
    Симпатии:
    0
    Вот скрипт:
    <?php
    echo date("H:i:s")."<br/>";
    echo date_default_timezone_get()."<br/>";
    ?>

    Вот что он выводит
    09:11:42
    Etc/GMT+3

    Хотя системное время 15 часов.

    в php.ini
    [Date]
    date.timezone = Etc/GMT+3
     
  5. topas

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

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    А в винде зона установлена?
     
  6. Phantik

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

    С нами с:
    2 июл 2009
    Сообщения:
    163
    Симпатии:
    0
    date_default_timezone_set('Europe/Moscow'); Помогло.
    Раньше никогда с такой проблемой не сталкивался.
     
  7. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк