当前位置:  首页  >  PHP教程  >  PHP 应用  >  知识库

PHP实现的简单日历类

这篇文章主要介绍了PHP实现的简单日历类,可实现简单的日期显示功能,并高亮标注当前日期,具有一定的实用价值,需要的朋友可以参考下

这篇文章主要介绍了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 .= "

n";
$html .= "n";
$html .= "jb51.netn";
$html .= "n";
$first = $this->first();
for($i=0; $i<$first; $i++){
$html .= "";
}
$count = $this->datesofmonth[$this->m]+$first;
for ($i=1; $i<= $this->datesofmonth[$this->m]; $i++){
$style = $i==$this->d ? '' : '' ;
$html .= "$i";
if (($i==7%$first || ($i+$first)%7==0) && $i<$count){
$html .= "
n";
}
}
$count = 7-$count%7;
if ($count<7){
for ($i=0; $i<$count; $i++){
$html .= "";
}
}
$html .= "n";
$html .= "
上一月{$this->y}年 {$this->m}月下一月
星期天星期一星期二星期三星期四星期五星期六
n";
return $html;
}
}
$calendar = new calendar();
$calendar->set(time());
echo $calendar->html();

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

吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有