PHP实现的简单日历类


Posted in PHP onNovember 29, 2014

本文实例讲述了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>3water.com<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 相关文章推荐
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
May 04 PHP
php下清空字符串中的HTML标签的代码
Sep 06 PHP
PHP把网页保存为word文件的三种方法
Apr 01 PHP
PHP遍历目录并返回统计目录大小
Jun 09 PHP
php中error与exception的区别及应用
Jul 28 PHP
在php和MySql中计算时间差的方法详解
Mar 27 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
May 13 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
Feb 26 PHP
php实现图片上传并利用ImageMagick生成缩略图
Mar 14 PHP
PHP MSSQL 分页实例
Apr 13 PHP
php微信公众号开发模式详解
Nov 28 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 PHP
PHP实现货币换算的方法
Nov 29 #PHP
php实现的树形结构数据存取类实例
Nov 29 #PHP
Codeigniter购物车类不能添加中文的解决方法
Nov 29 #PHP
ThinkPHP模版中导入CSS和JS文件的方法
Nov 29 #PHP
ThinkPHP中Session用法详解
Nov 29 #PHP
thinkphp的静态缓存用法分析
Nov 29 #PHP
thinkphp中memcache的用法实例
Nov 29 #PHP
You might like
php 动态执行带有参数的类方法
2009/04/10 PHP
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
php 如何获取数组第一个值
2013/08/06 PHP
PHP中如何防止外部恶意提交调用ajax接口
2016/04/11 PHP
Yii2中OAuth扩展及QQ互联登录实现方法
2016/05/16 PHP
php与c 实现按行读取文件实例代码
2017/01/03 PHP
laravel 实现登陆后返回登陆前的页面方法
2019/10/03 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
JavaScript编程开发中的五个实用小技巧
2010/07/22 Javascript
jQuery对象[0]是什么含义?
2010/07/31 Javascript
jQuery Tools tooltip使用说明
2012/07/14 Javascript
Javascript实现简单二级下拉菜单实例
2014/06/15 Javascript
javascript几个易错点记录
2014/11/26 Javascript
javascript禁止访客复制网页内容的实现代码
2015/08/05 Javascript
基于JavaScript实现表单密码的隐藏和显示出来
2016/03/02 Javascript
基于js中的原型、继承的一些想法
2016/08/10 Javascript
NODE.JS跨域问题的完美解决方案
2016/10/20 Javascript
jQuery.ajax实现根据不同的Content-Type做出不同的响应
2016/11/03 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
Nodejs封装类似express框架的路由实例详解
2020/01/05 NodeJs
vue+koa2搭建mock数据环境的详细教程
2020/05/18 Javascript
解决qrcode.js生成二维码时必须定义一个空div的问题
2020/07/09 Javascript
[01:02:26]DOTA2-DPC中国联赛 正赛 SAG vs RNG BO3 第二场 1月18日
2021/03/11 DOTA
Python基于回溯法子集树模板实现8皇后问题
2017/09/01 Python
Python探索之URL Dispatcher实例详解
2017/10/28 Python
Python实现PS滤镜特效Marble Filter玻璃条纹扭曲效果示例
2018/01/29 Python
tensorflow查看ckpt各节点名称实例
2020/01/21 Python
利用PyQt5+Matplotlib 绘制静态/动态图的实现代码
2020/07/13 Python
Python基于Faker假数据构造库
2020/11/30 Python
CSS3移动端vw+rem不依赖JS实现响应式布局的方法
2019/01/23 HTML / CSS
商场中秋节活动方案
2014/02/07 职场文书
公司贷款承诺书
2014/05/30 职场文书
工会趣味活动方案
2014/08/18 职场文书
教你快速开启Apache SkyWalking的自监控
2021/04/25 Servers
HTML+CSS 实现顶部导航栏菜单制作
2021/06/03 HTML / CSS