1.两个循环
$first_day = strtotime(date('Y-m',$this->data['now']).'-01');
$week=date("w",$first_day)*1; // 每个月的一号是星期几
$days=date("t",$first_day)*1; //每个月的总天数for($k=1;$k<=$days+7;$k++){
echo '<tr class="cal-month-row">'; for($i=$k;$i<$k+7;$i++) { if($i<=$week || ($i-$week)>$days) { echo "<td> </td>"; //获取当月一号前面的空格 } else { echo "<td><span>".($i-$week)."</span></td>"; //输出当月天数 } } $k=$k+6; echo '</tr>'; }
2.一个循环:
echo '<tr class="cal-month-row">';
for($k=1;$k<=$days+$week;$k++) { if($k<=$week) { echo "<td> </td>"; //获取当月一号前面的空格 } else { echo "<td>".($k-$week)."</td>"; //输出当月天数 } if($k%7==0) { echo '</tr><tr class="cal-month-row">'; } } echo '</tr>';