Je gère un site Web ciblé sur le monde où des gens du monde entier visitent. La base de données contient l'heure au format International Date Line West. Je prends le fuseau horaire de l'utilisateur en utilisant JavaScript et je convertis l'heure de la base de données en heure de l'utilisateur, puis je l'affiche sur la page. Je veux demander si la date internationale de West Line est le format correct pour le site Web de niveau mondial? Ou le réglage sur UTC ou GMT sera meilleur? Et quelle est la différence entre UTC et GMT et International Date Line West? Ces trois sont-ils les mêmes? Enfin, quelle heure dois-je définir sur mon serveur qui sera converti en utilisant le décalage du fuseau horaire de l'utilisateur?
Si vous êtes intéressé par les observations astronomiques, par exemple des satellites tels que GPS , ou si vous souhaitez citer une norme technique ( IT- R TF.460-6 ), alors vous pourriez vous soucier que nous utilisons UTC et que GMT n'ait plus de définition précise. Sinon, vous considérez probablement GMT comme la même chose que UTC, et considérez également T et UT1 comme identique à UTC - qui techniquement ils ne le sont pas.
De plus, si vous suivez des criminels informatiques ou d'autres activités distribuées, vous devez déterminer si certains événements sur divers sites peuvent ou non se produire avant certains autres événements. À cette fin, vous voudrez apprendre et utiliser Network Time Protocol (NTP) . Cela aura un effet beaucoup plus important sur votre compréhension du temps que les petites différences entre UTC, UT1 et UT.
" International Date Line West" est juste un nom convivial pour un fuseau horaire où l'heure est définie comme douze heures de moins que UTC (c'est-à-dire UTC-12).
UTC est effectivement le nouveau nom de GMT. Il présente des différences très mineures, mais aucune qui vous affectera dans ce scénario.
Le commentaire de Servy est complètement faux en disant que GMT inclut l'heure d'été. C'est un fuseau horaire différent appelé BST vers lequel le Royaume-Uni passe de GMT au cours de l'été.
Habituellement, lorsque vous devez présenter des dates ou des heures à des personnes dans des fuseaux horaires différents, vous devez enregistrer toutes les informations de temps en UTC sur votre base de données et les convertir en fuseau horaire des utilisateurs sur la couche d'affichage (lorsque vous présentez les informations à votre utilisateur)
Cependant, vous trouverez quelques défis: - Le fuseau horaire que vous obtenez à partir de javascript n'est peut-être pas fiable - Trouver l'emplacement de l'utilisateur via l'IP, puis obtenir le fuseau horaire n'est pas non plus fiable
Une bonne approche à mon avis est d'utiliser une "meilleure estimation" pour trouver le fuseau horaire par défaut (le fuseau horaire javascript devrait suffire) et donner à l'utilisateur la possibilité de configurer activement son fuseau horaire.
Sur certaines applications Google, leur approche consiste à demander à l'utilisateur son fuseau horaire avant de commencer, cela ne doit être fait que lorsque vous pouvez garantir que vous n'avez pas à le répéter à chaque fois que l'utilisateur visite votre site (via des comptes d'utilisateur ou des cookies)