PHP实现的简单日历类

 更新时间:2014年11月29日 14:46:12   投稿:shichen2014  
这篇文章主要介绍了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部分常见问题总结

    Php部分常见问题总结

    [红色]Php部分常见问题总结...
    2006-12-12
  • PHP中的自动加载操作实现方法详解

    PHP中的自动加载操作实现方法详解

    这篇文章主要介绍了PHP中的自动加载操作实现方法,结合实例形式详细分析了php自动加载的概念、原理、实现方法及相关操作注意事项,需要的朋友可以参考下
    2019-08-08
  • Linux安装配置php环境的方法

    Linux安装配置php环境的方法

    这篇文章主要介绍了Linux安装配置php环境的方法,较为详细的讲述了Linux平台安装配置PHP环境的具体步骤与相关注意事项,需要的朋友可以参考下
    2016-01-01
  • PHP结合Redis+MySQL实现冷热数据交换应用案例详解

    PHP结合Redis+MySQL实现冷热数据交换应用案例详解

    这篇文章主要介绍了PHP结合Redis+MySQL实现冷热数据交换应用案例,结合具体实例形式详细分析了Redis+MySQL冷热数据交换原理、实现方法及相关操作技巧,需要的朋友可以参考下
    2019-07-07
  • php文件夹的创建与删除方法

    php文件夹的创建与删除方法

    这篇文章主要介绍了php文件夹的创建与删除方法,实例分析了php创建与删除文件夹的技巧,需要的朋友可以参考下
    2015-01-01
  • php回调函数处理数组操作示例

    php回调函数处理数组操作示例

    这篇文章主要介绍了php回调函数处理数组操作,结合实例形式详细分析了PHP回调函数遍历与过滤数组相关操作技巧与注意事项,需要的朋友可以参考下
    2020-04-04
  • PHP开发的微信现金红包功能示例

    PHP开发的微信现金红包功能示例

    这篇文章主要介绍了PHP开发的微信现金红包功能,结合实例形式较为详细的分析了php使用微信接口实现现金红包功能的相关步骤与操作技巧,需要的朋友可以参考下
    2017-06-06
  • 使ecshop模板中可引用常量的实现方法

    使ecshop模板中可引用常量的实现方法

    据说ecshop的模板类是修改的smarty,不过个人感觉不是修改是完全重写了。它和smarty上只是模板标签上有相同的地方,同时阉割了很多功能
    2011-06-06
  • PHP实现的一致性Hash算法详解【分布式算法】

    PHP实现的一致性Hash算法详解【分布式算法】

    这篇文章主要介绍了PHP实现的一致性Hash算法,结合实例形式详细分析了php一致性Hash算法的概念、原理及相关实现与使用技巧,需要的朋友可以参考下
    2018-03-03
  • php对象在内存中的存在形式分析

    php对象在内存中的存在形式分析

    这篇文章主要介绍了php对象在内存中的存在形式,实例分析了对象在内存中的存储及运算原理,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-02-02

最新评论