私はこれに対する簡単な答えをどこでも探しましたが、うまくいくか、私の要件を満たす解決策を見つけることができませんでした。
私はデータをループしています。これは次のようになります。
Array
(
[0] => 4c36fd909b37208b
[1] => event:
[2] => start_scan
[3] => 2012-08-17 12:01:15
)
Array
(
[0] => 4c36fd909b37208b
[1] => sysaction:
[2] => lower_device
[3] => 2012-08-17 12:01:19
)
Array
(
[0] => 4c36fd909b37208b
[1] => event:
[2] => how_to_use_displayed
[3] => 2012-08-17 12:01:46
)
Array
(
[0] => 4c36fd909b37208b
[1] => event:
[2] => scan_displayed
[3] => 2012-08-17 12:01:59
)
Array
(
[0] => 4c36fd909b37208b
[1] => sysaction:
[2] => layer_1_display_on_recognition
[3] => 2012-08-17 12:02:23
)
2つの日付の間の時間を計算したいのですが、結果はHH:MM:SSの形式である必要があります。上記の例のデータでは、2012-08-1712:01:15と2012-08-1712:02:23の違いが必要です。これは00:01:08である必要があります。
私はここからコードを使用しようとしました:http ://www.if-not-true-then-false.com/2010/php-calculate-real-differences-between-two-dates-or-timestamps/しかしそれは00:00:20を返し続けます
私もこれを試しました(最初の配列の日付は$ xpTimeとして保存され、最後の配列の日付は$ xpEndTimeTmpに設定されています):
$start = new DateTime($xpTime);
$end = new DateTime($xpEndTimeTmp);
$diff = $start->diff($end);
$xpDuration = date('H:i:s', strtotime($diff->h.':'.$diff->i.':'.$diff->s));
しかし、それはどちらかで機能しているようです(同じ時間、分、異なる秒を返します)。
誰かが私を助けてくれること、私が間違っていることを教えてくれること、または私を正しい軌道に乗せることができるサンプルコードを持っていることを願っています!