2011-04-27 104 views
2

我正在處理日曆/計劃器Web應用程序,我需要比較事件的開始和結束時間,然後再將它們存儲在我的數據庫中。事件只能有一天的時間範圍,並且在上午8點到午夜之間。開始時間總是必須在結束時間之前進行。PHP - 比較時間

帖子值來自以下格式hh:mm:ss12:14:00)等形式,所以我可以將它們存儲在我的數據庫中沒有太多麻煩。有什麼辦法可以比較這些時間嗎?

非常感謝!

回答

4

如果這些時間在數據庫中,那麼數據庫的比較運算符將會起作用。例如:

SELECT * FROM table WHERE time < NOW() 

在PHP中,比較時間最簡單的方法是將它們轉換爲時間戳,然後將時間戳比較爲整數。您可以使用strtotime來進行轉換。

例如:

$time1 = "08:00:00"; 
$time2 = "09:00:00"; 

if (strtotime($time1) > strtotime($time2) || 
    strtotime($time1) < strtotime("08:00:00")) { 
    ... 
} 
+0

謝謝,真的幫助我:) – cabaret 2011-04-27 13:04:32

3

如果您運行的是PHP 5.3,則可以使用DateTime對象的diff() method來獲取兩個日期之間的差異。但是也可以僅使用時間戳(1天= 86400秒)

+0

如果這有一個例子,這將是更好的答案。 – Luke 2015-11-13 12:20:47