PHP将DateTime与当前时间进行比较

Mat*_*att 0 php mysql sql time

将字段与当前时间进行比较时遇到一些麻烦.

我在MySQL有两个字段,记录讲座的开始时间和结束时间.

我要做的是检查当前时间是否在开始时间和结束时间之间.

$ starttime和$ endtime采用DateTime的形式.

代码在这里:

$now = time();
$compare = mysql_query("SELECT * FROM lecture WHERE strtotime(starttime) < '$now' AND '$now' < strtotime(endtime)");
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

我也试过这个:

$now = new DateTime;
$compare = mysql_query("SELECT * FROM lecture WHERE starttime < '$now' AND '$now' < endtime");
Run Code Online (Sandbox Code Playgroud)

但它也破了.

谁能告诉我如何实现它?非常感谢.

Joh*_*Woo 7

使用 BETWEEN

SELECT * 
FROM   lecture 
WHERE  NOW() BETWEEN starttime AND endtime
Run Code Online (Sandbox Code Playgroud)