復制代碼 代碼如下:
<?php
$monthoneday=date("Ym")."01";
$oneweekday=date("w",strtotime($monthoneday)); //獲得本月1號星期幾
$monthday=date("t"); //本月多少天
$startlow=($oneweekday==0)?7:$oneweekday; //從第幾列開始
for($a=1,$b=$startlow;$a<=$monthday;$a++,$b++){
$ary[$b]=$a; //用數組控制日期在哪裡輸出
}
$c=1;
//輸出行數等於當月天數除7取整再加1
for($a=1;$a<=(int)($monthday/7)+1;$a++){
echo "<tr>";
//我是用數組的key來控制在哪能裡輸出的
for($b=1;$b<=7;$b++,$c++){
if($ary[$c]==date("j")){
echo '<td id="today">';
}else{
echo "<td>";
}
echo $ary[$c];
echo "</td>";
echo "\n";
}
echo "</tr>";
}
?>
寫法估計和別人寫得不一樣...呵...就這點程序我寫了半天,剛開始一直是循環思路有問題.居然輸出31行1234呵...
看來只有多寫才能鍛練思維...這個應該用JS實現的,可是我不會JS...只能這樣了.
下面是效果...主要是模板挺好看的...