我有一个列表,列表中列出了一些日期,因此,我的数据库结果如下:
$day = $res->fields['DAY'];
$month = $res->fields['MONTH'];
$year = $res->fields['YEAR'];
我把它们放在一起形成一个有效的日期
// put together the date
$date = $res->fields['DAY']."/".$res->fields['MONTH']."/".$res->fields['YEAR'];
// get the present day
$today = date('d/m/Y'); // 28/10/2011
我检查:
if($date == $today){
$backGroundTr = "red";
}
将<tr>
背景设置为红色。
html是这样的:
<tr bgcolor="green">
<td>31/10/2011</td>
</tr>
<tr bgcolor="green">
<td>30/10/2011</td>
</tr>
<tr bgcolor="green">
<td>29/10/2011</td>
</tr>
<tr bgcolor="red"> // this reciave the red bgcolor because is today
<td>28/10/2011</td>
</tr>
现在,我要做的是:
如何在接下来的3天内设置其他颜色?正如你在示例中看到的那样,我把绿色。
不知道我是否清楚,任何问题,请成为我的客人
答案 0 :(得分:1)
这应该可以解决问题
if($date == date('d/m/Y',strtotime('+1 day')) ||
$date == date('d/m/Y',strtotime('+2 day')) ||
$date == date('d/m/Y',strtotime('+3 day'))){
$backGroundTr = "green";
}
或者你可以这样做:(我假设你在你的日子里徘徊)(这个解决方案不会按照相反的顺序打印天数)
$green=0;
while ( ... ){
...
if($date == $today){
$backGroundTr = "red";
$green=3;
}
if ($green>0)
{
$backGroundTr = "green";
$green--;
}
...
}
或者你可以这样做:
if(strtotime($date) > strtotime($today) &&
strtotime($date) <= strtotime('+3 days',$today)
{
$backGroundTr = "green";
}