![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 74 Pomógł: 1 Dołączył: 5.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Głowie się od pewnego czasu nad obsługą stref czasowych. Ogólnie sprawa wygląda tak że zapisuję zawsze do bazy datę w formacie unixowym dla strefy GMT +0. Czyli ustawiam w php strefe czasu na na Europe/Dublin i to co zwraca time() wrzucam do bazy. Teraz tylko przy wyświetlaniu pobieram ten czas i dodaje do niego 3600 razy przesunięcie godzinowe strefy czasowej która wybrał użytkownik. Wszystko jest cacy... tylko że po zmianie czasu np. z zimowego na letni już nie będzie. Na dodatek w tej samej strefie czas zimowy i letni trwa różnie... tzn. u nas jest teraz zimowy a gdzieś daleko na południe (w tej samej strefie) mają letni (IMG:style_emoticons/default/nerdsmiley.png) Jak to wszystko poskładać żeby nikt nie osłupiał od złej daty? I czy ten manual php.net jest świetny czy jednak rzeczywiście nie ma tam informacji czy czas z time() jest zimowy czy letni? No właśnie jaki jest? Oczywiście nie chcę tak żeby użytkownik musiał stale pilnować jaki ma czas i zmieniać z zimowego na letni i odwrotnie. On ma tylko raz ustawić sobie strefę. Ten post edytował tomahawk 15.02.2011, 22:29:52 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 74 Pomógł: 1 Dołączył: 5.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
No fakt jeżeli dam
$warsawTime = new DateTime( "now", $warsawTZ ); To data jest jak najbardziej poprawna. Ale jeżeli chcę wyświetlić jakąś inną datę to co mam dać zamiast "now" ? Próbowałem dać tam znacznik czasu z time() (zapisany wcześniej do bazy danych) i niestety np. dla naszej strefy godzina jest błędna (1h za mało). Ten post edytował tomahawk 16.02.2011, 13:33:44 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 05:33 |