我到处搜寻,我只是像疯了一样感到困惑。我想突出显示一个月内的所有星期日,并且根据我目前的代码,我不知道应该在哪里插入代码以突出星期日。或者代码错了......请帮忙吗?
如果我们有12月份,则应突出显示4,11,18和25,其中12个突出显示为当前日期(ID ='焦点')在附件中:
显示日期的代码(仅显示突出显示的当前日期):
$timestamp = mktime(0,0,0,$cMonth,1,$cYear);
$maxday = date("t",$timestamp);
$thismonth = getdate ($timestamp);
$startday = $thismonth['wday'];
for ($i=0; $i<($maxday+$startday); $i++) {
if($i < $startday) echo "";
elseif(($i - $startday + 1) == $cDay){
echo "<td align='center' valign='middle' class='tableBody' id='focus'>". ($i - $startday + 1) ."</td>";
}
else {
if (($i - $startday + 1) == date("j") && ($cMonth-1) == date("F")) {
echo "<td class='tableBody' align='center' valign='middle'>". ($i - $startday + 1) . "</td>";
}
else {
echo "<td class='tableBody' align='center' valign='middle'>". ($i - $startday + 1) . "</td>";
}
}
}
答案 0 :(得分:1)
日期(&#34; N&#34;)ISO-8601星期几的数字表示(在PHP 5.1.0中添加)1(星期一)到7(星期日)
您可以检查日期是否等于7
$timestamp = mktime(0,0,0,$cMonth,1,$cYear);
$maxday = date("t",$timestamp);
$thismonth = getdate ($timestamp);
$startday = $thismonth['wday'];
for ($i=0; $i<($maxday+$startday); $i++) {
if($i < $startday) {
echo "";
}
elseif(date("N F", mktime(0,0,0,$cMonth,($i - $startday + 1),$cYear)) == 7){
// Sunday
echo "<td align='center' valign='middle' class='tableBody' id='focus'>". ($i - $startday + 1) ."</td>";
}
else {
if (($i - $startday + 1) == date("j") && ($cMonth-1) == date("F")) {
echo "<td class='tableBody' align='center' valign='middle'>". ($i - $startday + 1) . "</td>";
}
else {
echo "<td class='tableBody' align='center' valign='middle'>". ($i - $startday + 1) . "</td>";
}
}
}