Vous aurez besoin de beaucoup d'informations pour obtenir des résultats précis si vous ne souhaitez pas utiliser un service Web. Il y a un hack cependant, ce qui donne facilement des résultats approximatifs:
Divide longitude by 15
Selon www.timeanddate.com:
... Chaque fuseau horaire est alors théoriquement 15 degrés de large, ce qui correspond à une différence d'une heure temps solaire moyen. La forme des fuseaux horaires est modifiée, dans la pratique, pour correspondre aux frontières internes et internationales. L'heure civile change d'une heure en avant et en arrière respectivement pour chaque 15 degrés à l'est ou à l'ouest du méridien de Greenwich. Il faudrait diviser la longitude, en degrés, par 15 pour trouver le fuseau horaire approprié, en heures. Par exemple:
At 150 degrees west (or 150° W) longitude, the time should be 150 degrees divided by 15 degrees = 10 hours behind Coordinated Universal Time (UTC/GMT) (or UTC-10).
At 75 degrees east (or 75° E) longitude, the time would be 75 degrees divided by 15 degrees = 5 hours ahead of UTC/GMT (or UTC+5).
Sans utiliser une ressource en ligne de quelque sorte, ou une base de données de définitions de polygones de fuseau horaire, vous aurez du mal à mettre en œuvre vous-même car il n'y a pas une fonction simple de longitude fuseau horaire. Regardez une carte des fuseaux horaires du monde si vous en doutez; Même à 0, il y a plusieurs fuseaux horaires. Oh, et GMT est si dernier siècle, UTC est quand il est maintenant homme. –
@HighPerformanceMark * GMT est si dernier siècle, *. M'a fait rire. – christopher