だから私はphpにこのコードを持っています:
$now= new \Datetime("UTC");
$lv=$user->getLastVisit();
$interval =$lv->diff($now,true);
print_r($interval);
print_r("<br>".$lv->format("Y-m-d H:i:s"));
print_r("<br>".$now->format("Y-m-d H:i:s"));
exit(0);
これは出力です:
DateInterval Object ( [y] => 0 [m] => 0 [d] => 0 [h] => 6 [i] => 59 [s] => 6 [invert] => 0 [days] => 0 )
2013-04-09 23:44:21
2013-04-09 23:45:15
結果は6時間59分6秒!しかし、私が手動で差をつければ、54秒あります!! では、この DateTime::diff 関数の何が問題なのですか?
編集:
これが var_dump($user->getLastVisit()); です。
2013-04-09 23:54:59object(DateTime)#320 (3) { ["date"]=> string(19) "2013-04-09 23:44:21" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" }