如何在PHP中检查给定的时间字符串是否介于两次之间?
我给了时间选择器来选择时间范围,用户可以分别选择开始时间和结束时间 开始时间:上午11:00结束时间:下午5:00 这是12小时格式,现在我想验证时间,比如开始时间应该大于12:00 AM,结束时间应该小于12:00 PM 11:59 PM 现在我有了这样的时间:如何在PHP中检查给定的时间字符串是否介于两次之间?,php,datetime,Php,Datetime,我给了时间选择器来选择时间范围,用户可以分别选择开始时间和结束时间 开始时间:上午11:00结束时间:下午5:00 这是12小时格式,现在我想验证时间,比如开始时间应该大于12:00 AM,结束时间应该小于12:00 PM 11:59 PM 现在我有了这样的时间: if(strtotime($start_time) > strtotime('12:00 AM') && strtotime($end_time) < strtotime('11:59 PM')) {
if(strtotime($start_time) > strtotime('12:00 AM') && strtotime($end_time) < strtotime('11:59 PM'))
{
echo "Time Validated";
}
else
{
echo "Time not validated";
}
$start_time="11:00 AM";
$end_time="05:00 PM";
$formatted_start_time = DateTime::createFromFormat('H:i a', $start_time);
$formatted_end_time = DateTime::createFromFormat('H:i a', $end_time);
$time1=DateTime::createFromFormat('H:i a', "12:00 AM");
$time2 =DateTime::createFromFormat('H:i a', "11:59 PM");
if($formatted_start_time > $time1
&& $formatted_end_time < $time2 )
{
echo "Time Validated";
}
else
{
echo "Time not validated";
}
您可以根据给定的格式创建DateTime类,并比较它们以验证时间
工作代码是
:
函数isValidTime$input,$start\u time=`12:00am,$end\u time=11:59pm,$format=h:ia{
$input\U date=\DateTime::createFromFormat$format,$input;
$start\u date=\DateTime::createFromFormat$format,$start\u time;
$end\u date=\DateTIme::createFromFormat$format,$end\u time;
return$start_date您必须使用DateTime::createFromFormat'H:i a',$time, 试着这样做:
if(strtotime($start_time) > strtotime('12:00 AM') && strtotime($end_time) < strtotime('11:59 PM'))
{
echo "Time Validated";
}
else
{
echo "Time not validated";
}
$start_time="11:00 AM";
$end_time="05:00 PM";
$formatted_start_time = DateTime::createFromFormat('H:i a', $start_time);
$formatted_end_time = DateTime::createFromFormat('H:i a', $end_time);
$time1=DateTime::createFromFormat('H:i a', "12:00 AM");
$time2 =DateTime::createFromFormat('H:i a', "11:59 PM");
if($formatted_start_time > $time1
&& $formatted_end_time < $time2 )
{
echo "Time Validated";
}
else
{
echo "Time not validated";
}
这回答了你的问题吗?@bravemaster:它没有解决我的问题,因为它是与当前时间比较的。我不清楚你的问题是什么。你展示了一些当前代码,但没有提到任何问题;你需要帮助的是它在做什么或不做什么?如果你解释一下这些代码是如何工作的,那将非常好。代码很好,但是如果你真的教我们一些东西并解释为什么这个解决方案有效,那就更好了