PHP实现的简单日历类

前端技术 2023/09/08 PHP

本文实例讲述了PHP实现的简单日历类。分享给大家供大家参考。

具体实现代码如下:

复制代码 代码如下:
date_default_timezone_set(\"etc/gmt-8\");
header(\"Content-type: text/html; charset=utf-8\");
class calendar{
var $t = array();
var $datesofmonth = array(\'1\'=>\'31\',\'2\'=>\'28\',\'3\'=>\'31\',\'4\'=>\'30\',\'5\'=>\'31\',\'6\'=>\'30\',\'7\'=>\'31\',\'8\'=>\'31\',\'9\'=>\'30\',\'10\'=>\'31\',\'11\'=>\'30\',\'12\'=>\'31\');
var $y,$m,$d;
function set($time){
$this->t = getdate($time);
$this->y = $this->t[\'year\'];
$this->m = $this->t[\'mon\'];
$this->d = date(\'d\',$time);
}
function isrun(){
return ($this->y%400==0 || ($this->y%4==0 && $this->y%100==0)) ? 1 : 0;
}
function first(){
$time = mktime(0,0,0,$this->m,1,$this->y);
$time = getdate($time);
return $time[\'wday\'];
}
function html(){
$isrun = $this->isrun();
$this->datesofmonth[2] = $isrun==1 ? 29: 28;
$html .= \"<table style=\'border:solid 1px black;\'>n\";
$html .= \"<tr><th><a href=\'\'>上一月</a></th><th colspan=\'5\'>{$this->y}年 {$this->m}月</th><th><a href=\'\'>下一月</a></th><tr>n\";
$html .= \"<tr><td>星期天</td><td>星期一</td><td>星期二</td>phpstudy.net<td>星期三</td><td>星期四</td><td>星期五</td><td>星期六</td></tr>n\";
$html .= \"<tr>n\";
$first = $this->first();
for($i=0; $i<$first; $i++){
$html .= \"<td></td>\";
}
$count = $this->datesofmonth[$this->m]+$first;
for ($i=1; $i<= $this->datesofmonth[$this->m]; $i++){
$style = $i==$this->d ? \' style=\"color:red;font-weight:bold;\"\' : \'\' ;
$html .= \"<td align=\'center\'{$style}>$i</td>\";
if (($i==7%$first || ($i+$first)%7==0) && $i<$count){
$html .= \"</tr>n<tr>\";
}
}
$count = 7-$count%7;
if ($count<7){
for ($i=0; $i<$count; $i++){
$html .= \"<td></td>\";
}
}
$html .= \"</tr>n\";
$html .= \"</table>n\";
return $html;
}
}
$calendar = new calendar();
$calendar->set(time());
echo $calendar->html();

希望本文所述对大家的php程序设计有所帮助。

本文地址:https://www.stayed.cn/item/22046

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。