2009-04-20 14 views
2

私はstrtotimeを使っていくつかのropey XMLからタイムスタンプを作成していますが、タイムゾーンが間違っています。時間から5時間を削除する

時間から5時間はどうすれば削除できますか?あなたはタイムゾーンを知っていれば

答えて

9

、あなたはそれが設定されていた場合、あなたが知っているように、あなただけの()のstrtotimeでこれを行うことができますdate_default_timezone_set()

でそれを設定することができます。

strtotime("-5 hours", $time); 
+0

速いタイパー.. 23秒で私にそれを打ち明けてください:) –

3

は、あなたはおそらくしたいような何か:これはエポックからの秒数で、現在の時間のために、日付や時間などの文字列をフォーマット

date('Y-m-d H:i:s', time() - 18000); 

から18000秒(5時間)。減算する数値を調整して、調整している時間数を調整することができます。あなたが(60 * 60 * 5)として18000を書いた方がより明白かもしれません。

strtotime()は、米国と注文が異なる文字列で予期しない結果を招く可能性があります。ヨーロッパ表記(01/02/2009)は、1月2日と読む予定で、2月1日を予定しています。これは、私がolafurのソリューションで見ることができる唯一の問題です。それ以外のところは固いですが、どちらか一方がうまくいくでしょう。

+0

私はニッキングをしていますが、18000は「マジックナンバー」なので、$ 5_hours = 5 * 60 * 60を追加したいと思います。それをあなたのコードに入れてください。 – TravisO

+2

私は18,000の代わりに(60 * 60 * 5)と書いたほうがはっきりと述べました。あなたはコードサンプルだけで答えを読んだことさえありましたか? –

+0

このメソッドは、strtotimeよりも信頼性が高くなります。あなたが時間を削除するだけの場合、分は0にリセットされることがあります... – Erick

関連する問題