我想比較兩個時間戳和基於60或10的時間差。 更準確地說,如果timestamp1-timestamp2比x小時和y更長(或不是)秒。PHP比較時間戳和實時差的差別
我使用DateTime和DateInterval類,但沒有這樣的功能,我找不到一個乾淨的解決方案。
感謝
我想比較兩個時間戳和基於60或10的時間差。 更準確地說,如果timestamp1-timestamp2比x小時和y更長(或不是)秒。PHP比較時間戳和實時差的差別
我使用DateTime和DateInterval類,但沒有這樣的功能,我找不到一個乾淨的解決方案。
感謝
$time1 = new DateTime("2011-01-26 01:13:30"); // string date
$time2 = new DateTime();
$time2->setTimestamp(1327560334); // timestamps, it can be string date too.
$interval = $time2->diff($time1);
echo $interval->format("%H hours %i minutes %s seconds");
輸出
11 hours 32 minutes 4 seconds
+1使用DateTime和DateInterval,正確確定小時數的唯一方法(並考慮到DST更改) – Arjan
$timestamp1 = strtotime('2012-01-26 14:00:00');
$timestamp2 = strtotime('2012-01-25 17:00:00');
if (abs($timestamp1 - $timestamp2) < 60 * 60 * 5 /* (5 hours) */) {
...
謝謝,我只是忘記了秒數:s – adieuuu
都轉換時間戳和實時的UNIX時間戳。然後簡單地減去以獲得秒差的數量。
隨着datetime對象:
$interval = $TempReceiptDateTime->diff($ShipDateTime);
echo $interval->format('%R%H:%I:%s days');
你有你'timestamp1'和'timestamp2'數據的例子嗎? – sberry
$ remainingTimeBeforeReceipt = $ TempReceiptDateTime-> getTimestamp() - $ ShipDateTime-> getTimestamp() – adieuuu
'DateTime'和'DateInterval'中有這樣的函數。請參閱我的回答 –