2011-04-27 101 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