当今天不在两个给定日期之间时,如何隐藏项目


How to hide an item when today is not between 2 given dates?

当日期不在2个给定日期之间时,我想在选择框中隐藏项目。例如:起始日期为5月5日,结束日期为5月16日。如果今天是10号,那么这个项目可以显示。如果今天是4号或24号,该项目不能显示。

我试过了:

<?php
echo "<select>";        
if(05-05-2013 < date("d-m-Y") AND 16-05-2013 < date("d-m-Y")){
echo "<style type='text/css'>
    .date{
        display: none;
    }
</style>";  
}

echo "<option class='date'>test1</option>";
echo "<option class='date'>test2</option>";
echo "</select>";
?>

:

<?php
echo "<option style='
if(05-05-2013 < date('d-m-Y') AND 16-05-2013 < date('d-m-Y'))
{ 
     echo 'display: none;'; 
}'>test</option>";
?>

但这不起作用。有人知道怎么做吗?提前感谢!

$today = new DateTime();
$start = new DateTime('05-05-2013');
$end   = new DateTime('16-05-2013');
if ($today >= $start && $today <= $end)
{
    // show it
}

试试这个

  $display_style = '';
if((strtotime('05-05-2013') < strtotime(date("d-m-Y"))) AND (strtotime('16-05-2013') < strtotime(date("d-m-Y")))){
$display_style =  "style='display:none;'";  
}
echo "<select ".$display_style.">";        
echo "<option class='date'>test1</option>";
echo "<option class='date'>test2</option>";
echo "</select>";

问题是"当日期在两个给定日期之间而不是时,我想隐藏项目"所以试试这个:

$date_compare='17-05-2013';
if($date_compare<'05-05-2013'||$date_compare>'16-05-2013'){//if date_compare not between 05-05-2013 and 16-05-2013 show
echo "<style type='text/css'>
        .date{
          display: none;
         }
       </style>";
}

仅显示日期在两个给定日期之间而不是时的样式