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 相关文章推荐
一个用于MySQL的PHP XML类
Oct 09 PHP
Access数据库导入Mysql的方法之一
Oct 09 PHP
php 取得瑞年与平年的天数的代码
Aug 10 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
解析php函数method_exists()与is_callable()的区别
Jun 21 PHP
php实现分页工具类分享
Jan 09 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
Jan 29 PHP
Laravel 5框架学习之Eloquent 关系
Apr 09 PHP
php中使用websocket详解
Sep 23 PHP
详解Yii2高级版引入bootstrap.js的一个办法
Mar 21 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 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
《雄兵连》系列首部大电影《烈阳天道》:可能是因为期望值太高了
2020/08/18 国漫
PHP中的string类型使用说明
2010/07/27 PHP
thinkphp3.x中变量的获取和过滤方法详解
2016/05/20 PHP
PHP实现简单计算器小程序
2020/08/28 PHP
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
Mootools 1.2教程(3) 数组使用简介
2009/09/14 Javascript
JSON 和 JavaScript eval使用说明
2010/06/13 Javascript
JS实现横向拉伸动感伸缩菜单效果代码
2015/09/04 Javascript
一道优雅面试题分析js中fn()和return fn()的区别
2016/07/05 Javascript
AngularJS基础 ng-mousemove 指令简单示例
2016/08/02 Javascript
谈谈PHP中相对路径的问题与绝对路径的使用
2016/08/16 Javascript
利用n工具轻松管理Node.js的版本
2017/04/21 Javascript
BootStrap中的Fontawesome 图标
2017/05/25 Javascript
详解如何在vue中使用sass
2017/06/21 Javascript
前端必备插件之纯原生JS的瀑布流插件Macy.js
2017/11/22 Javascript
vue获取当前激活路由的方法
2018/03/17 Javascript
JavaScript实现封闭区域布尔运算的示例代码
2018/06/25 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
vue-router重定向和路由别名的使用讲解
2019/01/19 Javascript
vue实现拖拽效果
2019/12/23 Javascript
[54:10]完美世界DOTA2联赛PWL S2 Magma vs FTD 第二场 11.29
2020/12/03 DOTA
python爬虫基本知识
2018/03/05 Python
解决Python安装后pip不能用的问题
2018/06/12 Python
python列表使用实现名字管理系统
2019/01/30 Python
python pygame实现五子棋小游戏
2020/10/26 Python
分享一个页面平滑滚动小技巧(推荐)
2019/10/23 HTML / CSS
大学生入党思想汇报
2014/01/14 职场文书
小学敬老月活动方案
2014/02/11 职场文书
新教师培训心得体会
2014/09/02 职场文书
合作协议书模板
2014/10/10 职场文书
优秀党员主要事迹材料
2015/11/04 职场文书
Mysql实现主从配置和多主多从配置
2021/06/02 MySQL
开机音效回归! Windows 11重新引入开机铃声
2021/11/21 数码科技
Mysql外键约束的创建与删除的使用
2022/03/03 MySQL
Mongodb 迁移数据块的流程介绍分析
2022/04/18 MongoDB
python实现学生信息管理系统(面向对象)
2022/06/05 Python