PHP选择单元格中的当前时间
如果我使用PHP代码,如:PHP选择单元格中的当前时间,php,Php,如果我使用PHP代码,如: for ($i = 1; $i <= 24; $i++) { $timetable=strftime("%X", mktime(0, 0, $hour[$i], $month, $day, $year)); } 我想突出显示打印时间包含当前时间的单元格(如果当前时间为9:23:00,则突出显示单元格将是打印时间为07:23:18的单元格,如果当前时间为13:59:06,则突出显示单元格将是11:55:41) 我该怎么做呢?有一个date_diff()函数
for ($i = 1; $i <= 24; $i++)
{
$timetable=strftime("%X", mktime(0, 0, $hour[$i], $month, $day, $year));
}
我想突出显示打印时间包含当前时间的单元格(如果当前时间为9:23:00,则突出显示单元格将是打印时间为07:23:18的单元格,如果当前时间为13:59:06,则突出显示单元格将是11:55:41)
我该怎么做呢?有一个date_diff()函数,可以用来确定哪一个最近。或者,如果此信息来自数据库,则可以使用数据库的日期/时间处理函数以列的形式返回Now()和正在回退的日期之间的时间差。使用此功能:
$thisID = 0;
for ($i = 1; $i <= 24; $i++)
{
$tt = mktime(0, 0, $hour[$i], $month, $day, $year);
$timetable = strftime("%X", $tt);
if($thisID == 0 && (time() - $tt) >= 0)
$thisID = $i;
}
$thisID=0;
对于($i=1;$i=0)
$thisID=$i;
}
现在,
$thisID
为您提供所需的行。使用它突出显示该行。我认为最好的方法是将时间存储在unix时间戳或午夜后的秒数中。这样,您就有了一种可靠的数据排序方法
要获得最接近的记录,您需要进行两次查询
Select time from times where time > $value order by time desc limit 1
Select time from times where time < $value order by time asc limit 1
从时间中选择时间>$value按时间顺序描述限制1
按时间asc限制1从时间<$value顺序的时间中选择时间
现在将这两个结果与$value进行比较,并返回最接近的结果
尽管此方法需要2个查询并使用一个大于/小于语句,但我认为ist比检索所有数据更快
希望这有帮助 谢谢,但我在“if($time()-$tt>=0)”行中遇到了这个错误“致命错误:函数名必须是字符串”。有什么问题吗?几分钟后我更新了代码并发布了它。你试过新代码了吗。
Select time from times where time > $value order by time desc limit 1
Select time from times where time < $value order by time asc limit 1