我有一个脚本,其中有一个包含耗材日期的表格。现在有很多日期+ - 600.现在我要做的是高亮显示从今天到期的所有日期,直到两周后,或者如果日期已经过去。 表格看起来像这样
现在这些只是几行。但是我怎样才能突出显示今天的所有日期,直到两周后和过去的日期自动... 我已经搜索了很多,我唯一可以找到的是两个日期之间的高位,但我想要自动 - >今天的日期 - 2周后(并且每天自动更新)
对于我的英语,我希望问题很明确 thx提前更新代码:
<?php
// get two weeks from now
$date_in_two_weeks = strtotime('+2 weeks');
$date_in_two_weeks = date("Y-m-d",$date_in_two_weeks);
// get the date to compare, from db or whatever you want
$date_to_compare = "2014-02-01";
// compare the date in your list to now + 2 weeks and then put the date difference into $days_difference
$date_from_list = new DateTime($date_to_compare);
$date_in_two_weeks = new DateTime($date_in_two_weeks);
$days_difference = $date_from_list->diff($date_in_two_weeks);
if ($days_difference->days > 14) {
$highlight_css_class = "highlight";
} else {
$highlight_css_class = "none";
}
?>
<style>
.highlight {
color:#cc0000;
}
.none {
}
</style>
<fieldset>
<table class="tablesorter" id="my-table" border="1" style="border-collapse:collapse">
<thead>
<tr>
<th>REK</th>
<th>BESCHRIJVING</th>
<th>VERVALDATUM</th>
</tr>
</thead>
<tbody>
<tr><td>A1</td><td>hamburger</td><td class="<?php echo $highlight_css_class;?>">2014-02-10</td></tr>
<tr><td>A1</td><td>tomato</td><td class="<?php echo $highlight_css_class;?>">2014-06-10</td></tr>
</tbody>
</table>
所以所有日期现在都有课程突出显示,它们都是红色的......? 我这个代码做错了什么? 我不明白
答案 0 :(得分:1)
假设您使用的是PHP 5.3&gt; ,您可以使用diff获取日期与+2周之间的差异,然后决定是否将css类应用于<td>
。
示例:
// get two weeks from now
$date_in_two_weeks = strtotime('+2 weeks');
$date_in_two_weeks = date("Y/m/d",$date_in_two_weeks);
// get the date to compare, from db or whatever you want
$date_to_compare = "2014/02/01";
// compare the date in your list to now + 2 weeks and then put the date difference into $days_difference
$date_from_list = new DateTime($date_to_compare);
$date_in_two_weeks = new DateTime($date_in_two_weeks);
$days_difference = $date_from_list->diff($date_in_two_weeks);
if ($days_difference->days > 14) {
$highlight_css_class = "highlight";
} else {
$highlight_css_class = "";
}
现在在您的表格中,将css类应用于<td>
或您想要的任何位置。
<tr>
<td>A1</td>
<td>hamburger</td>
<td class="<?php echo $highlight_css_class;?>">2014-02-10</td>
</tr>
当然,在CSS中使用您想要的样式创建.highlight
类。
.highlight {
background:#e1e1e1;
}