calendar.class.php

复制代码代码如下所示:
< PHP
班级日历{
私有$年
私有$月;当前月份
私人start_weekday美元; / /这个月的第一天是对应于几周
私有美元天;当前月份多少天

功能__construct(){
美元->年= isset($ _get {年})$ _get {年}:日期(Y);
美元->月= isset($ _get { 月})$ _get {月}:日期(我);

美元-> start_weekday =日期(W
此日期=
}

函数(){
回声';
美元-> chagedate(测试。PHP );
$this->weeksList ();
美元-> dayslist();
回声';
}

私有函数weekslist(){
$周=阵列(天','一','二'、三、四、五、六);

回声';
($ i = 0;$ i <计数($星期);$ + +)
$;

回声';
}

私有函数dayslist(){
回声';
输出空间(当前的一月/前一天清空)
为($ J = 0;jstart_weekday美元;J + +)
回波;


为($ k = 1;kdays美元;$ K +){
美元+;
如果($ =日期=(''))
回声' $ K ';
其他的
回声' $ K ';

如果($ = 7 = 0)
回声';

}

下面的空格
(7美元!= 0){
回波;
美元+;
}

回声';
}

私有函数prevyear($年$月,){
今年1美元=美元;

如果($<1970)
1970美元;

返回;
}


私有函数prevmonth($年$月,){
如果($ = 1){
年= 1美元;

如果($<1970)
1970美元;

12美元;
其他{ }
一个月--;
}

返回;
}


私有函数($年$月,明年){
年= 1美元;

如果(年> 2038)
2038美元;

返回;
}


私有函数下个月($年,美元一个月){
如果($ = 12){
年+ +;

如果(年> 2100)
2100美元;

1美元;
其他{ }
月+ +;
}


返回;
}

私有函数chagedate($url = ){
回声';
echo'prevyear(美元->年,美元->月)>'。。;
echo'prevmonth(美元->年,美元->月)>'。。;
回声';
回声';
echo'month。;
为($ = 1970;$ SY 2100;$ + +){
选定的=($ = $ = $ - >年)选定的:;
回声;
}
回声';
echo'year。'month = 这个选项{ SelectedIndex }。值;
对于($ = 1;$ SM = 12;$ + +){
selected1美元=(SM = =美元美元->月)选择:;
$;
}
回声';
回声';
回声';


echo'nextyear(美元->年,美元->月)>'。> >'。。;
echo'nextmonth(美元->年,美元->月)>'。>。。;
回声';
}

}
>


test.php

复制代码代码如下所示:

表{
边境:1px solid # 050;
}

{。fontb
颜色:白色;
背景:蓝色;
}


{日
宽度:30px;
}

TD,{
身高:30px;
文本对齐:中心;

}
{形式
保证金:0px;
填料:0px;
}

< PHP
包含日历类;

日历=新日历;

$日历>输出();
>