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 set_magic_quotes_runtime() 函数过时解决方法
Jul 08 PHP
phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
Aug 18 PHP
解析zend Framework如何自动加载类
Jun 28 PHP
php数组中包含中文的排序方法
Jun 03 PHP
ThinkPHP中ajax使用实例教程
Aug 22 PHP
php获取用户浏览器版本的方法
Jan 03 PHP
php foreach如何跳出两层循环(详解)
Nov 05 PHP
PHP使用strrev翻转中文乱码问题的解决方法
Jan 13 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
Dec 21 PHP
PHP实现网站应用微信登录功能详解
Apr 11 PHP
Laravel 5.5 实现禁用用户注册示例
Oct 24 PHP
PHP实现chrome表单请求数据转换为接口使用的json数据
Mar 04 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
PHPWind与Discuz截取字符函数substrs与cutstr性能比较
2011/12/05 PHP
php中Y2K38的漏洞解决方法实例分析
2014/09/22 PHP
关于实现代码语法标亮 dp.SyntaxHighlighter
2007/02/02 Javascript
详解addEventListener的三个参数之useCapture
2015/03/16 Javascript
jQuery实现鼠标跟随提示层效果代码(可显示文本,Div,Table,Html等)
2016/04/18 Javascript
JS获取和修改元素样式的实例代码
2016/08/06 Javascript
javascript实现瀑布流动态加载图片原理
2016/08/12 Javascript
javascript 判断是否是微信浏览器的方法
2016/10/09 Javascript
详解基于javascript实现的苹果系统底部菜单
2016/12/02 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
2016/12/26 Javascript
javascript实现右下角广告框效果
2017/02/01 Javascript
Vue实现动态添加或者删除对象和对象数组的操作方法
2018/09/21 Javascript
如何自定义微信小程序tabbar上边框的颜色
2019/07/09 Javascript
js 判断当前时间是否处于某个一个时间段内
2019/09/19 Javascript
Vue插件之滑动验证码
2019/09/21 Javascript
简单了解JS打开url的方法
2020/02/21 Javascript
vue下canvas裁剪图片实例讲解
2020/04/16 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
[01:14]2014DOTA2展望TI 剑指西雅图newbee战队专访
2014/06/30 DOTA
python关闭windows进程的方法
2015/04/18 Python
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
Python爬取网页中的图片(搜狗图片)详解
2017/03/23 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
Python实现重建二叉树的三种方法详解
2018/06/23 Python
Flask框架URL管理操作示例【基于@app.route】
2018/07/23 Python
3种python调用其他脚本的方法
2020/01/06 Python
打包PyQt5应用时的注意事项
2020/02/14 Python
HTML5 通过Vedio标签实现视频循环播放的示例代码
2020/08/05 HTML / CSS
宿舍违规检讨书
2014/01/12 职场文书
金融管理应届生求职信
2014/02/20 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
土建施工员岗位职责
2015/04/11 职场文书
作息时间调整通知
2015/04/22 职场文书
整改通知书格式
2015/04/22 职场文书
教你解决往mysql数据库中存入汉字报错的方法
2021/05/06 MySQL
mapstruct的用法之qualifiedByName示例详解
2022/04/06 Java/Android