PHPでUTCオフセットを取得するには、使用できますdate("Z")
が、これは、取得したいユーザーのコンピューターのタイムゾーンではなく、サーバーのタイムゾーンに相対的なUTCオフセットを返すと思います。検索したところ、ユーザーのコンピューターのタイムゾーンに対する UTC オフセットを取得するにgetTimezoneOffset()
は、UTC 時間と現地時間の時差を分単位で返す JavaScript 関数を使用できることがわかりました。そして、phpスクリプトでこのjavascript関数を正常に使用しました。ここで私の質問は次のとおりです: javascritpgetTimezoneOffset()
関数は常に (またはほとんどの場合)、ユーザーのコンピューターに対する正確な UTC オフセットを返す信頼性がありますか?
1 に答える
2
これは、ユーザーの日付/時刻設定によって異なります。ユーザーのコンピューターにタイムゾーンが設定されていることをブラウザーが認識しているものに基づいて、オフセットが提供されます。
ただし、javascript を使用している場合は、サーバー側ではなく、クライアント側、つまりブラウザで実行されることに注意してください。したがって、次の場合を除き、PHP で使用することはできません。
- ユーザーが初めてウェブサイトにアクセスしたときに、(javascript を介して) Cookie に保存します。
- AJAX 呼び出しを行って PHP コードを保存し、それをセッションに保存します。
- ユーザーのコンピュータに時刻を表示したい場合は、表示したい日付と の間の時差を送信し、それをユーザーの時刻に
now()
追加するgetTime()
か、差を表示します (つまり、7 時間前、2 分前など)。 .)。
于 2013-01-05T13:06:48.680 に答える