1、这是一个简单的 php 例子

  2、这个例子的功能是,实现一个简单的日历显示功能。

  3、该函数的作用是:输入指定的 年、月、日时,输出当前月的日历,并在输入的指定 日期 中,突出显示。

  具体的代码实现如下:

  

 1 <?php
 2 header("Content-Type: text/html;charset=utf-8");
 3
 4 date_default_timezone_set("PRC");
 5
 6 /*
 7  * 日历函数
 8  */
 9
10  /**
11   * 输出当前年、月的日历
12   * 2015年6月13日
13   * @author gaoqing
14   * @param  int $year 年
15   * @param  int $month 月
16   * @param  int $day 当前日期
17   * @return void 空
18   */
19  function calendar($year, $month, $day){
20      /*
21       * 1、判断当前年、月 有多少天
22       * 2、输出基本的日历的框架
23       * 3、判断当前月的第一天,是周几
24       * 4、循环所有的天数,填满日历
25       */
26
27      //1、判断当前年、月 有多少天
28      $unix_time = mktime(0, 0, 0, $month, 1, $year);
29      //$mont_day = cal_days_in_month(CAL_GREGORIAN, $month, $year);
30      $mont_day = intval(date('t', $unix_time));
31
32      //2、输出基本的日历的框架
33      echo "<table border = '0' style = 'text-align:center; width: 800px;' >";
34
35      echo "<tr>";
36          echo "<th>星期日</th>";
37          echo "<th>星期一</th>";
38          echo "<th>星期二</th>";
39          echo "<th>星期三</th>";
40          echo "<th>星期四</th>";
41          echo "<th>星期五</th>";
42          echo "<th>星期六</th>";
43      echo "</tr>";
44
45      //3、判断当前月的第一天,是周几
46      $first_day_week = intval(date('w', $unix_time));
47
48      /*
49       * 4、循环所有的天数,填满日历
50       *     4.1、首先填充第一行,根据第一天的星期数,填充空白
51       *     4.2、依次的循环日期数,当 $i % 7 时,说明是下一个星期,需要换行
52       *     4.3、所有日期都循环后,判断是否到了表格末尾,如果没到,用空格填充
53       */
54      echo "<tr>";
55      //4.1、首先填充第一行,根据第一天的星期数,填充空白
56      for ($i = 0; $i < $first_day_week; $i++){
57          echo "<td>&nbsp;</td>";
58      }
59
60      //4.2、依次的循环日期数,当 $i % 7 时,说明是下一个星期,需要换行
61      for ($j = 1; $j <= $mont_day; $j++){
62          if ($j == $day) {
63              echo "<td style = 'background: red;' >{$j}</td>";
64          }else {
65              echo "<td>{$j}</td>";
66          }
67          $i++;
68
69          if($i % 7 == 0){
70              echo "</tr><tr>";
71          }
72      }
73
74      //4.3、所有日期都循环后,判断是否到了表格末尾,如果没到,用空格填充
75      while ($i % 7 != 0) {
76          $i++;
77          echo "<td>&nbsp;</td>";
78      }
79
80      echo "</tr>";
81
82      echo "</table>";
83  }
84
85  calendar(2015, 6, 13);
86 ?>

  简易的页面显示为:

  

转载于:https://www.cnblogs.com/gaoqing/articles/4573257.html

PHP 简单日历功能的实现相关推荐

  1. Java——实现简单日历功能

    通过下面三个类Calendar,DataFormat,SimpleDateFormat 完成日历效果,如下图: 思路: (1)在日历类中定义第一天.一个月中最大的天数和当前键盘录入的这一天,用键盘录入 ...

  2. Android 实现日历功能特别简单

    一. 接下来讲一下安卓实现日历功能,网上也有很多,我感觉这个相对简单一点. 效果图: 日期选择 效果图:时间选择 二.这个特别简单哈这,边弄了一个方法直接复制代码就可以使用了. 主要是下面单独写的那两 ...

  3. python实现日历功能_基于python实现简单日历

    本文实例为大家分享了python实现简单日历的具体代码,供大家参考,具体内容如下 首先要理清楚逻辑,日历的难点在于如何使用基础知识将周几与对应的日期进行对应,我这里利用了1917年1月1日为星期1,计 ...

  4. 调用Android自带日历功能(日历列表单、添加一个日历事件)

    调用Android自带日历功能  觉得这篇文章不错,转载过来. 转载:http://blog.csdn.net/djy1992/article/details/9948393 Android手机配备有 ...

  5. php 调用日历控制,基于ThinkPHP实现的日历功能实例详解

    本文实例讲述了基于ThinkPHP实现的日历功能.分享给大家供大家参考,具体如下: 开发环境介绍 最新,闲来没事,便开发了一款简单的日历,来统计工作情况.为了开发便捷,使用ThinkPHP架构.界面如 ...

  6. java中实现工厂日历_Java实现的日历功能完整示例

    本文实例讲述了java实现的日历功能.分享给大家供大家参考,具体如下: 应用名称:Java日历 用到的知识:Java GUI编程,日期操作 开发环境:win8+eclipse+jdk1.8 功能说明: ...

  7. php 日历排班的例子,基于ThinkPHP实现的日历功能实例详解

    搜索热词 本文实例讲述了基于ThinkPHP实现的日历功能.分享给大家供大家参考,具体如下: 开发环境介绍 最新,闲来没事,便开发了一款简单的日历,来统计工作情况.为了开发便捷,使用ThinkPHP架 ...

  8. python实现日历功能_Python方法完成农历日历功能代码

    Python方法完成农历日历功能代码 #coding=utf-8 #****************************************************************** ...

  9. java 日历_Java实现的日历功能完整示例

    本文实例讲述了Java实现的日历功能.分享给大家供大家参考,具体如下: 应用名称:Java日历 用到的知识:Java GUI编程,日期操作 开发环境:win8+eclipse+jdk1.8 功能说明: ...

最新文章

  1. 高中毕业就想转行当 Coder,程序员的学历真的不重要么?
  2. 如何将CSDN文档输出PDF文件?
  3. Maven project deploy to Nexus
  4. runtime objc_msgSend
  5. Linux内核探讨-- 第五章
  6. bzoj 2109: [Noi2010]Plane 航空管制
  7. 10.5 Throwable类
  8. 【Redis】15.Redis主从复制
  9. Verizon的SDN策略:不鸣则已,一鸣惊人?
  10. zabbix使用Omsa来监控Dell服务器的硬件信息
  11. Node.js的完全卸载与下载安装及各种npm、nvm、nrm配置(保姆式教程---提供全套安装包)---node.js的安装与配置(0)
  12. 阿里 AI 研究成果入选国际顶会 ICML 2020,AI 推理速度提升 3 倍
  13. 在Scala IDEA for Eclipse或IDEA里程序编译实现与在Spark Shell下的对比(其实就是那么一回事)...
  14. C Tricks(五)—— 比例和阈值的实现
  15. 获取本机的ip地址(Windows和linux的区别)
  16. 什么是 UCOS操作系统及特点
  17. flash加载图片 代码_消失的人:Flash中的图片加载器和随机链接应用
  18. moment时区处理心得
  19. 机房内网电脑时间自动同步器
  20. 指挥中心显示大屏类型简介

热门文章

  1. 语义分割评估指标MIOU
  2. 关于Spring中的ClassPath
  3. 【光电工程实训】几何光学 小孔成像 光的反射 光的折射 透镜成像
  4. P1395 会议 题解
  5. 解决MapGIS 导出shape文件后属性表内容错乱问题
  6. java poi 边框_java poi 设置边框
  7. python多个if怎么优化_利用策略模式优化过多 if else 代码
  8. GitHub使用中的错误及解决办法
  9. python汇率换算程序_Python学习笔记8——汇率计算器
  10. linux/安卓的spi读写ADS1256出现读写错误