PHPでは、ホスティングプロバイダがどこにあるのかをハードコーディングすることなく、現在の時刻をUTCでどのように取得できますか?strtotimeを使用して現在のUTC時刻を正確に取得するにはどうすればよいですか?
例えば、私は次のことを試してみました:
time() + strtotime('January 1, 2000')-strtotime('January 1, 2000 UTC')
、それが1時間進んだ実際のUTC時間のある時に報告することを見つけます。私は同じ結果を持つ2つの異なるタイムゾーンで2つの異なるホスティングプロバイダでこれを試しました。
UTC時間を正確に取得するための信頼できる方法がありますか?
私はPHP 4.4.9に制限されているので、PHP5に追加された新しいタイムゾーンのものを使用することはできません。
ありがとうございます。
、あなたがそうであるように同じ時間帯でのホスティングプロバイダですか?表示する日付( "T")の出力をチェックしてみてください。 – Tom
@トム:OPが彼のプロバイダが特定の地域にいると想定できるなら、それはうまくいくでしょう。 'date(" T ")'の問題は、北米ESTやオーストラリアESTなどの "EST"の問題です。 – MitMaro
私はちょうど情報を釣っていました。すべての場合に機能するように思われるソリューションについては、私の答えを参照してください。時間帯についてのあなたの意見。私のすべてのサーバーが米国にあるので、これまで対処していたことはありませんでした。 – Tom