在简单的PHP时间选择器中隐藏过去的时间

在简单的PHP时间选择器中隐藏过去的时间,php,Php,我的第一个代码块查找最近的小时并将其存储在$nextHour变量中 我想在我的第二批代码中使用这个值,所以它只在下拉列表中显示未来的时间。如何更新第二块代码以实现这一点 <?php $date = new DateTime(); $nextHour = (intval($date->format('H'))+1) % 24; echo $nextHour.':00'; // 5 ?> <?php $start = "09:00"; $end = "20:00"; $t

我的第一个代码块查找最近的小时并将其存储在
$nextHour
变量中

我想在我的第二批代码中使用这个值,所以它只在下拉列表中显示未来的时间。如何更新第二块代码以实现这一点

<?php
$date = new DateTime();
$nextHour = (intval($date->format('H'))+1) % 24;
echo $nextHour.':00'; // 5
?>

<?php
$start = "09:00";
$end = "20:00";

$tStart = strtotime($start);
$tEnd = strtotime($end);
$tNow = $tStart;
?>
<select name="callbacktime" id="callbacktime">
<?php 
while($tNow <= $tEnd){
  echo '<option value='.date("H:i",$tNow).'>'.date("H:i",$tNow).'</option>';
  $tNow = strtotime('+1 hour',$tNow);
}
?>
</select>


我会选择这样的方法,因为这样可以避免像我之前在评论中提到的那样检查每个循环。

在while循环中,如果($tNow>time())或者类似的方法,您可以
if($tNow>time())
,或者,您可以确保
$tStart
不小于当前值time@Dale这非常有效-非常感谢!
$tStart = max([strtotime('09:00'), time()]);