ユーザーがリクエストを送信している現地時間を知りたいです。基本的に、このような機能のようなものはありますか
var localTime = getLocalTime( lat, long );
ほとんどの国は完全な幾何学的形状を持っていないため、緯度での単純な除算が機能するかどうかはわかりません.
どんな助けでも素晴らしいでしょう。どの言語も受け入れられます。離れた API を呼び出すことは避けたいと思います。
Google Time Zone APIは、あなたが求めているもののようです。ただし、無料利用枠はありません。
Time Zone API は、地表上の場所の時間オフセット データを提供します。特定の緯度/経度のペアのタイム ゾーン情報を要求すると、そのタイム ゾーンの名前、UTC からの時間オフセット、および夏時間オフセットが返されます。
数日前に同じことを探していましたが、残念ながらそれを行う API または単純な関数が見つかりませんでした。おっしゃる通り、国は完全な幾何学的形状を持っていないからです。各タイムゾーンの地域の表現を作成し、ポイントがどこにあるかを確認する必要があります. これは苦痛だと思いますし、それができるかどうかはまったくわかりません。
私が見つけた唯一のものはここで説明されています: Geonames.org のような Web サービスを使用せずに緯度/経度からタイムゾーンを決定します。基本的に、タイムゾーンに関する情報を含むデータベースが必要であり、関心のあるポイントに最も近いものを確認しようとしています。
しかし、私は(インターネットを使用せずに)静的なソリューションを探していたので、インターネット接続を使用できる場合は、 http ://www.earthtools.org/webservices.htm を使用できます。これは、lat/ で指定されたタイムゾーンを提供する Web サービスを提供します。ロン座標。
ユーザーIPを使用して、ユーザーが住んでいる場所を特定できませんか? 次に、(Countries | Difference with GMT) の配列を使用して現地時間を取得します。