PHP实现的简单日历类

yipeiwu_com6年前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>jb51.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程序设计有所帮助。

相关文章

PHP获取网页所有连接的方法(附demo源码下载)

本文实例讲述了PHP获取网页所有连接的方法。分享给大家供大家参考,具体如下: function getHtml($url, $charset='utf-8') { $curl =...

PHP清除数组中所有字符串两端空格的方法

本文实例讲述了PHP清除数组中所有字符串两端空格的方法,分享给大家供大家参考。具体实现方法如下: 一般来说在php中清除字符串中空格我们可以有很多实现方法,但清除数组中所有值的前后代码我...

Yii 2.0如何使用页面缓存方法示例

前言 本文主要给大家介绍的是关于Yii2.0如何使用页面缓存的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍。 起初使用页面缓存,发现使用于含有参数的方法存在弊端,只能缓存第...

php生出随机字符串

本文实例为大家分享了php生出随机字符串的具体代码,供大家参考,具体内容如下 function generateRandomString($length = 10) { $ch...

探讨Hessian在PHP中的使用分析

探讨Hessian在PHP中的使用分析

什么是Hessian  Hessian是由caucho提供的一种开源的远程通讯协议。  采用二进制 RPC 协议,基于 HTTP 传输,服务器端不用另开放防火墙端口。  协议的规范是公开...