-
PHP实现的简单日历类
这篇文章主要介绍了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程序设计有所帮助。
出处:http://www.phpfensi.com/php/20210501/14727.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式