2016-12-12 57 views
0

我一直在寻找各处,我只是很疯狂地感到困惑。我想在一个月内突出显示所有星期日以及我现在使用的代码,但我不知道我应该在哪里插入代码以突出显示星期日。或者,也许代码是错误的...请帮忙吗?突出显示一个月内的所有星期日

如果我们有十二月份,应该强调4,11,18和25,12安装在图像突出显示为当前日期(ID =“焦点”): enter image description here

的代码显示天(只显示高亮当天):

$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>"; 
    } 
} 
} 

我迷茫如何得到此输出: enter image description here

回答

1

PHP Date

日期( “N”)的一周内(在PHP 5.1.0添加的)当天的ISO-8601数字表示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>"; 
     } 
    } 
} 
+0

解决!非常感谢你,你太棒了! (/ N_N)/ – Aki

相关问题