W obliczu dokładnie tego problemu znalazłem ten odnośnik , który mapuje zwięzłą listę stref czasowych w stylu Windows na podzbiór absurdalnie wyczerpującej listy stref czasowych w stylu Uniksa.
Użytkownicy otrzymują listę rozwijaną tych nazw w stylu systemu Windows (np. (GMT-05:00) Czas wschodni (USA i Kanada)), a ich wybór jest przechowywany w bazie danych w formacie uniksowym (np. Ameryka/Nowy_Jork )
Praca nad zastosowaniem preferencji strefy czasowej użytkownika odbywa się w PHP w czasie wyświetlania, przy użyciu Klasa DateTime . Myślę, że poleciłbym to, aby mieć pewność, że daty, które manipulujesz w SQL/PHP, są zawsze w UTC, dopóki nie zostaną wyświetlone.