2013-10-31 234 views
0

我有兩個時間戳幾個小時和幾天之間的差距。 PHP和/或MySQL有沒有辦法每天獲得時間片?時間片每天兩個時間戳

INPUT 
Timestamp 1: 2013-10-30 10:00:00 
Timestamp 2: 2013-10-31 11:00:00 

OUTPUT 
2013-10-30: 14 hours 
2013-10-31: 11 hours 
+0

檢查[DATETIME](HTTP:// PHP。 net/manual/en/class.datetime.php)PHP的對象,或者如果它們是MySQL時間戳,請檢查MySQL的DATE_函數以處理日期計算。但是對於我來說,它不是完全清楚你從哪裏得到14h和11h ...... – TiMESPLiNTER

+0

時間戳1是開始。這一天(30日)有14個小時,直到午夜。最後是時間戳2.從上午0點到11點11個小時。 – Thomas1703

回答

0

對日期執行操作的最簡單方法是將它們轉換爲時間戳。

在這裏,你可以做的是獲得三種時間戳:

$ts1 = strtotime("2013-10-30 10:00:00"); 
$ts2 = strtotime("2013-10-31 00:00:00"); 
$ts3 = strtotime("2013-10-31 11:00:00"); 

$first_time_slice = ts2 - ts1; //here you got your first time slice in seconds, convert it to hours 
$second_time_slice = ts3 - ts2; //idem for the second time slice 
0

它在MySQL中可做過這樣的:

SELECT TIMEDIFF(TIMESTAMP(DATE('2013-10-30 10:00:00') + INTERVAL 1 DAY), '2013-10-30 10:00:00'), 
TIMEDIFF('2013-10-31 11:00:00', TIMESTAMP(DATE('2013-10-31 11:00:00')))