Php 为什么我的IF语句没有';I don’我没赶上中间的日期
我的数据库中有许多不同日期的记录,但我的代码没有捕捉到这些日期,也没有显示出来。有什么问题吗 这是我的代码Php 为什么我的IF语句没有';I don’我没赶上中间的日期,php,if-statement,date-range,Php,If Statement,Date Range,我的数据库中有许多不同日期的记录,但我的代码没有捕捉到这些日期,也没有显示出来。有什么问题吗 这是我的代码 $year = date("Y"); $sem1_s = date("M-d-Y", strtotime(date('Y') . '-8-1 00:00:00')); $sem1_e = date("M-d-Y", strtotime(date('Y') . '-12-31 00:00:00')); $sem2_s = date("M-d-Y", strtotime(date('Y')
$year = date("Y");
$sem1_s = date("M-d-Y", strtotime(date('Y') . '-8-1 00:00:00'));
$sem1_e = date("M-d-Y", strtotime(date('Y') . '-12-31 00:00:00'));
$sem2_s = date("M-d-Y", strtotime(date('Y') . '-01-1 00:00:00'));
$sem2_e = date("M-d-Y", strtotime(date('Y') . '-06-30 00:00:00'));
$date = '2015-10-15';
$date2 = date("M-d-Y", strtotime(date('Y') . '-3-1 00:00:00'));
if($date2 >= $sem1_s && $date2 <= $sem1_e){
echo $date2;
echo "First Sem";
}
else if($date2 >= $sem2_s && $date2 <= $sem2_e){
echo $date2;
echo "Second Sem";
}
else{
echo "error";
}
$year=日期(“Y”);
$sem1_s=日期(“M-d-Y”,标准时间(日期(“Y”)。-8-1 00:00:00”);
$sem1_e=日期(“M-d-Y”,标准时间(日期(“Y”)。-12-31 00:00:00”);
$sem2_s=日期(“M-d-Y”,标准时间(日期(“Y”)。-01-1 00:00:00”);
$sem2_e=日期(“M-d-Y”,标准时间(日期(“Y”)。-06-30 00:00:00”);
$date='2015-10-15';
$date2=日期(“M-d-Y”,标准时间(日期(“Y”)。-3-1 00:00:00”);
如果($date2>=$sem1\u s&&$date2=$sem2\u s&&$date2尝试像这样更改您的if语句
$year = date("Y");
$sem1_s = date("M-d-Y", strtotime(date('Y') . '-8-1 00:00:00'));
$sem1_e = date("M-d-Y", strtotime(date('Y') . '-12-31 00:00:00'));
$sem2_s = date("M-d-Y", strtotime(date('Y') . '-01-1 00:00:00'));
$sem2_e = date("M-d-Y", strtotime(date('Y') . '-06-30 00:00:00'));
$date = '2015-10-15';
$date2 = date("M-d-Y", strtotime(date('Y') . '-3-1 00:00:00'));
if($date2 >= $sem1_s || $date2 <= $sem1_e){
echo $date2;
echo "First Sem";
}
else if($date2 >= $sem2_s || $date2 <= $sem2_e){
echo $date2;
echo "Second Sem";
}
else{
echo "error";
}
$year=日期(“Y”);
$sem1_s=日期(“M-d-Y”,标准时间(日期(“Y”)。-8-1 00:00:00”);
$sem1_e=日期(“M-d-Y”,标准时间(日期(“Y”)。-12-31 00:00:00”);
$sem2_s=日期(“M-d-Y”,标准时间(日期(“Y”)。-01-1 00:00:00”);
$sem2_e=日期(“M-d-Y”,标准时间(日期(“Y”)。-06-30 00:00:00”);
$date='2015-10-15';
$date2=日期(“M-d-Y”,标准时间(日期(“Y”)。-3-1 00:00:00”);
如果($date2>=$sem1|s | |$date2=$sem2|s | |$date2我认为不能在字符串中使用大于或小于符号
您应该将变量转换为strottime
if(strtotime($date2) >= strtotime($sem1_s) && strtotime($date2) <= strtotime($sem1_e)){
echo $date2;
echo "First Sem";
}
else if(strtotime($date2) >= strtotime($sem2_s) && strtotime($date2) <= strtotime($sem2_e)){
echo $date2;
echo "Second Sem";
}
else{
echo "error";
if(strotime($date2)>=strotime($sem1_s)和&strotime($date2)=strotime($sem2_s)和&strotime($date2)请在您的if
语句中尝试一下,正如我在您的问题下面的评论中提到的,问题在于您的if
语句。因此将其更改为:
if (strtotime($date2) >= strtotime($sem1_s) && strtotime($date2) <= strtotime($sem1_e))
if(strotime($date2)>=strotime($sem1_s)&&strotime($date2),因为您需要将日期转换为进行比较
下面的命令将返回所需的结果
if(strtotime($date2) >= strtotime($sem1_s) && strtotime($date2) <= strtotime($sem1_e)){
echo $date2;
echo "First Sem";
}
else if(strtotime($date2) >= strtotime($sem2_s) && strtotime($date2) <= strtotime($sem2_e)){
echo $date2;
echo "Second Sem";
}
else{
echo "error";
}
if(strotime($date2)>=strotime($sem1_s)和&strotime($date2)=strotime($sem2_s)和&strotime($date2)尝试使用date_diff函数来计算两个日期之间的差异日期对象没有问题,问题在于if
语句