2011-12-02 4 views
5

I次のコードがあります。PHPのDateTimeは、関数

$now = '2011-12-01 22:32:33'; 
$datetime = '2011-12-01 00:07:27'; 


$nowObj = new DateTime($now); 
$datetimeObj = new DateTime($datetime); 

$diff = $datetimeObj->diff($nowObj); //leaving this in screws up the next line 

number_format(1134); //this becomes NaN 

が、私はそれは私が後で行う他の数字と数学を台無しに、このコードを実行するとで$差分= ...の行を残していますコードでたとえば、私のnumber_format(1134);後でNaNになります。 PHP 5.3.1でXAMPPスタックを使用しています。これはバグですか?

+0

mmm ...「混乱」コードを追加できますか? –

答えて

5

ini_set("date.timezone","Europe/Rome"); 

を追加することができますでしthis be related、うーん...

場合あなたはウィンドウ上にあるので、タイムゾーン設定が正しく設定されていることを確認します。 php.netのコメントは、Windowsの下でのいくつかの癖やバグの挙動を指摘しています。問題が解決しなければ、日付を比較する別の方法を真剣に検討することもできます。

+0

awesome、その常に壊れている次の操作、私はしばらくの間、このバグを持っていた – cdub

+0

あなたに多くのポイントを与えることができたらいいですか? – cdub

+0

問題は解決されない場合や、 phpのバージョンが最近のものです、あなたの調査結果を掲示板に戻すことを検討するか、この問題を再度開いてみてください。それはPHPをより良くするのに役立ちます。または、少なくとも日付オブジェクト、おそらく。 :o) – stefgosselin

0

ロケールのようです。 hevタイムゾーンをに設定しました。php.ini

[Date] 
date.timezone = Europe/Rome 

ヨーロッパ/ローマは私のタイムゾーンである;)

あるいはまた、あなたのコード内で