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 相关文章推荐
php预定义常量
Dec 25 PHP
发布一个用PHP fsockopen写的HTTP下载的类
Feb 22 PHP
php对gzip文件或者字符串解压实例参考
Jul 25 PHP
PHP调用Twitter的RSS的实现代码
Mar 10 PHP
用php制作简单分页(从数据库读取记录)的方法详解
May 04 PHP
PHP 登录记住密码实现思路
May 07 PHP
解析php中session的实现原理以及大网站应用应注意的问题
Jun 17 PHP
PHP入门之常量简介和系统常量
May 12 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
Aug 18 PHP
php 魔术方法详解
Nov 11 PHP
PDO防注入原理分析以及注意事项
Feb 25 PHP
PHP 实现 JSON 数据的编码和解码操作详解
Apr 22 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的ob_start();控制您的浏览器cache!
2006/11/25 PHP
PHP实现按之字形顺序打印二叉树的方法
2018/01/16 PHP
Jquery中dialog属性小记
2010/09/03 Javascript
js模拟hashtable的简单实例
2014/03/06 Javascript
js获取 type=radio 值的方法
2014/05/09 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
JSON格式化输出
2014/11/10 Javascript
js实现仿百度瀑布流的方法
2015/02/05 Javascript
深入php面向对象、模式与实践
2016/02/16 Javascript
js仿支付宝填写支付密码效果实现多方框输入密码
2016/03/09 Javascript
基于jQuery实现收缩展开功能
2016/03/18 Javascript
酷炫jQuery全屏3D焦点图动画效果
2016/03/22 Javascript
AngularJS基础 ng-submit 指令简单示例
2016/08/03 Javascript
Vue在chrome44偶现点击子元素事件无法冒泡的解决方法
2019/12/15 Javascript
《javascript设计模式》学习笔记三:Javascript面向对象程序设计单例模式原理与实现方法分析
2020/04/07 Javascript
Node.js API详解之 timer模块用法实例分析
2020/05/07 Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
2020/11/19 Vue.js
[04:49]2014DOTA2国际邀请赛 Newbee顺利挺进总决赛 ImbaTV独家专访
2014/07/19 DOTA
写了个监控nginx进程的Python脚本
2012/05/10 Python
python 切片和range()用法说明
2013/03/24 Python
深入理解Python 代码优化详解
2014/10/27 Python
Python3实现并发检验代理池地址的方法
2016/09/18 Python
名片管理系统python版
2018/01/11 Python
python将回车作为输入内容的实例
2018/06/23 Python
pycharm创建scrapy项目教程及遇到的坑解析
2019/08/15 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
2020/01/10 Python
Python读取VOC中的xml目标框实例
2020/03/10 Python
django model的update时auto_now不被更新的原因及解决方式
2020/04/01 Python
国贸专业大学生职业生涯规划范文
2014/01/10 职场文书
迟到检讨书400字
2014/01/13 职场文书
如何写辞职书
2015/02/26 职场文书
广告公司文案策划岗位职责
2015/04/14 职场文书
2015年酒店客房部工作总结
2015/04/25 职场文书
党员进社区活动总结
2015/05/07 职场文书
婚宴新娘致辞
2015/07/28 职场文书
Java如何实现通过键盘输入一个数组
2022/02/15 Java/Android