$m_1st = date("w",strtotime(date("Y-m-1")));//得到这月1日是星期几
$m_days = date("t");//得到此月天数
echo "一 二 三 四 五 六 日\n";
if ($m_1st<=0) $m_1st=7;
for($i=2-$m_1st,$k=1;$i<=$m_days;$i++,$k++) {
if($i<1) echo " ";
else {
echo $i," ";
if($k%7==0) echo "\n";
}
}
$m_days = date("t");//得到此月天数
echo "一 二 三 四 五 六 日\n";
if ($m_1st<=0) $m_1st=7;
for($i=2-$m_1st,$k=1;$i<=$m_days;$i++,$k++) {
if($i<1) echo " ";
else {
echo $i," ";
if($k%7==0) echo "\n";
}
}
前面几个星期的星期日后面都多了一个tab唉,这种小程序似乎再简练也简练不到哪里去了,呵呵
function build_calendar_table($year=0,$month=0,$day=0)
{
global $PHP_SELF;
$year=$_GET['year'];
$month=$_GET['month'];
$cal="";
if($year==0) $year=date('Y')+0;
if($month==0) $month=date('m')+0;
if($day==0) $day=date('d')+0;
$pyear=($month==1?$year-1:$year);
$pmonth=($month==1?12:$month-1);
$nyear=($month==12?$year+1:$year);
$nmonth=($month==12?1:$month+1);
$firstday=mktime(0,0,0,$month,1,$year);
$skip=date('w',$firstday);
$dim=date('t',$firstday);
$rows=ceil(($skip+$dim)/7);
$cal.="\n<table width=190 border=0 cellpadding=1 cellspacing=1 align=center style='font-size: 11px;font-family: Verdana;color:#000099'>";
$cal.="\n<tr><td colspan=7 align=center>";
$cal.="<a href=".$PHP_SELF."?year=".$pyear."&month=".$pmonth.">Last Month</a> ";
$cal.=$year."/".$month;
$cal.=" <a href=".$PHP_SELF."?year=".$nyear."&month=".$nmonth.">Next Month<a> ";
$cal.="\n</td></tr>";
$cal.="\n<tr align=center>";
$cal.="\n<td>Sun</td><td>Mon</td><td>Tue</td><td>Wen</td><td>Thu</td><td>Fri</td><td>Sat</td>";
$cal.="\n</tr>";
for($row=0;$row<$rows;$row++)
{
$cal.="\n<tr align=center>";
for($col=0;$col<7;$col++)
{
$cur=$row*7+$col-$skip+1;
$cal.="\n<td";
if($year==(int)date('Y')&&$month==(int)date('m')&&$cur==(int)date('d'))
$cal.=" bgcolor=#EBEBEB";
$cal.=">";
if($row*7+$col<$skip)
$cal.=" ";
else
{
if($cur>$dim)
$cal.=' ';
else
{
if($year==(int)date('Y')&&$month==(int)date('m')&&$cur==$day)
$cal.="<b>";
$this_time=$year."-".$month."-".$cur;
$url_msg="newslist.php?this_time=".$this_time;
$cal.=$cur;
if($year==(int)date('Y')&&$month==(int)date('m')&&$cur==$day)
$cal.="</b>";
}
}
$cal.="</td>";
}
$cal.="\n</tr>";
}
$cal.="\n</table>";
echo $cal;
}build_calendar_table();
?>
$m_days = date("t");//得到此月天数
echo "一 二 三 四 五 六 日\n";
if ($m_1st<=0) $m_1st=7;
for($i=2-$m_1st,$k=1;$i<=$m_days;$i++,$k++) {
if($i<1) echo " ";
else echo $i,$k%7?" ":"\n";
}
$tmp_time=mktime(0,0,0,$tmp_months,$tmp_days,$tmp_years);
$tmp_month=date("w",$tmp_time);
return $tmp_month;
} function cl_text($widths,$dates){
$calendar_text="<table border=0 width=".$widths." cellpadding=0 cellspacing=0 align=center><tr><td bgcolor=000000>";
$calendar_text.="<table border=0 width=100% cellpadding=0 cellspacing=1>";
$calendar_text.="<tr bgcolor=3f45ff align=middle><td colspan=7 class=p1>".date("Y年n月")."</td></tr>";
$calendar_text.="<tr bgcolor=fec9b4 align=middle><td colspan=7><table border=0 cellpadding=0 cellspacing=0 width=100%><tr align=middle><td>日</td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr></table></td></tr>";
$calendar_text.="<tr bgcolor=f1f1f1><td colspan=7><table border=0 width=100%>";
$year=date("Y");
$month=date("m");
$month_first_week=changeweek($year,$month,1);
//填充前面几个空余的星期格
for($i=0;$i<$month_first_week;$i++){
if($i==0){
$calendar_text.="<tr bgcolor=f1f1f1 align=middle>";
}
$calendar_text.="<td> </td>";
}
for($i=1;$i<=date("t");$i++){
$month_some=changeweek($year,$month,$i);
if($month_some==0){
$calendar_text.="<tr bgcolor=f1f1f1 align=middle>";
}
$calendar_text.="<td";
if($i==date("j")){
$calendar_text.=" bgcolor=cacec1";
}
$calendar_text.=">";
$tmp_date=$i;
if(@in_array($tmp_date,$dates)){
$calendar_text.="<font color=red>";
}
$calendar_text.=$i;
if(@in_array($tmp_date,$dates)){
$calendar_text.="</font>";
}
$calendar_text.="</td>";
if($month_some==6){
$calendar_text.="</tr>";
}
}
//填充后面几个空余的星期格
for($i=$month_some+1;$i<=6;$i++){
$calendar_text.="<td> </td>";
if($i==6){
$calendar_text.="</tr>";
}
}
$calendar_text.="</table></td></tr>";
$calendar_text.="</table>";
$calendar_text.="</td></tr></table>"; return $calendar_text;
} $starttime=date("Y-m")."-01 00:00:00";
$overtime=date("Y-m-t")." 23:59:59"; $dates[]=array(1,10,30); $nr=cl_text(165,$dates);
echo $nr;