PHP简单日历实现方法


Posted in PHP onJuly 20, 2016

本文实例讲述了PHP简单日历实现方法。分享给大家供大家参考,具体如下:

运行效果截图如下:

PHP简单日历实现方法

具体代码如下:

<?php
/*
 * Created on 2016-7-20
 */
SimCalendar('2016-08');//显示8月份日历
function SimCalendar($date)
{
  /**
   * 简单日历输出,本函数需要cal_days_in_month的支持
   * @param $date Y-m 要输出的日期
   */
  echo '<table border="1">
  <thead>
    <tr>
      <th>日</th>
      <th>一</th>
      <th>二</th>
      <th>三</th>
      <th>四</th>
      <th>五</th>
      <th>六</th>
    </tr>
  </thead>
  <tbody>';
    $date_array = explode('-', $date);
    $start_week = 0;//从星期天开始为0
    $month = cal_days_in_month(CAL_GREGORIAN, $date_array[1], $date_array[0]);//当月的天数
    $wstar = date('w', strtotime($date . '-01'));//当月从星期几天始
    $rows = ceil(($wstar + $month) / 7);//总行数
    $mday = 1;//第几天
    for ($i = 0; $i < $rows; $i++) {
      echo '<tr>';
      for ($d = 0; $d < 7; $d++) {
        $nowday = 7 * $i + $d + $start_week;
        if ($nowday >= $wstar && $mday <= $month) {
          $temp = date('d', strtotime($date . '-' . $mday));
          echo '<td>'.$temp . '</td>';
          $mday++;
        } else {
          echo '<td> </td>';
        }
      }
      echo '</tr>';
    }
  echo '</tbody>
</table>';
}
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
第十五节--Zend引擎的发展
Nov 16 PHP
php 缩略图实现函数代码
Jun 23 PHP
Linux下实现PHP多进程的方法分享
Aug 16 PHP
CentOS 6.2使用yum安装LAMP以及phpMyadmin详解
Jun 17 PHP
PHP实现的带超时功能get_headers函数
Feb 10 PHP
Laravel 5 框架入门(二)构建 Pages 的管理功能
Apr 09 PHP
PHP二维数组去重算法
Dec 17 PHP
php正则提取html图片(img)src地址与任意属性的方法
Feb 08 PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 PHP
利用php获得flv视频长度的实例代码
Oct 26 PHP
laravel5表单唯一验证的实例代码
Sep 30 PHP
如何在Mac上通过docker配置PHP开发环境
May 29 PHP
分析PHP中单双引号的误区和双引号小隐患
Jul 19 #PHP
PHP实现数组array转换成xml的方法
Jul 19 #PHP
smarty循环嵌套用法示例分析
Jul 19 #PHP
PHP中Socket连接及读写数据超时问题分析
Jul 19 #PHP
在PHP语言中使用JSON和将json还原成数组的方法
Jul 19 #PHP
JSON两种结构之对象和数组的理解
Jul 19 #PHP
深入理解PHP JSON数组与对象
Jul 19 #PHP
You might like
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
php学习笔记之面向对象
2014/11/08 PHP
php curl请求信息和返回信息设置代码实例
2015/04/27 PHP
PHP目录与文件操作技巧总结(创建,删除,遍历,读写,修改等)
2016/09/11 PHP
ThinkPHP实现登录退出功能
2017/06/29 PHP
PHP的HTTP客户端Guzzle简单使用方法分析
2019/10/30 PHP
JS实现支持Ajax验证的表单插件
2016/03/24 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
2016/06/12 Javascript
jQuery实现右键菜单、遮罩等效果代码
2016/09/27 Javascript
JS验证input输入框(字母,数字,符号,中文)
2017/03/23 Javascript
BootStrap的两种模态框方式
2017/05/10 Javascript
JS实现基于Sketch.js模拟成群游动的蝌蚪运动动画效果【附demo源码下载】
2017/08/18 Javascript
JS中图片压缩的方法小结
2017/11/14 Javascript
React/Redux应用使用Async/Await的方法
2017/11/16 Javascript
微信小程序定位当前城市的方法
2018/07/19 Javascript
vue.js编译时给生成的文件增加版本号
2018/09/17 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
Python中的条件判断语句基础学习教程
2016/02/07 Python
Python遍历目录中的所有文件的方法
2016/07/08 Python
Zabbix实现微信报警功能
2016/10/09 Python
python实现微信接口(itchat)详细介绍
2017/10/23 Python
基于python log取对数详解
2018/06/08 Python
python 基于TCP协议的套接字编程详解
2019/06/29 Python
python tkinter实现彩球碰撞屏保
2019/07/30 Python
Python 寻找局部最高点的实现
2019/12/05 Python
python使用Geany编辑器配置方法
2020/02/21 Python
django model object序列化实例
2020/03/13 Python
requests在python中发送请求的实例讲解
2021/02/17 Python
Html5移动端网页端适配(js+rem)
2021/02/03 HTML / CSS
内勤主管岗位职责
2014/04/03 职场文书
诚信贷款承诺书
2014/05/30 职场文书
优秀乡村医生事迹材料(2016精选版)
2016/02/29 职场文书
如何使用PostgreSQL进行中文全文检索
2021/05/27 PostgreSQL
nginx中封禁ip和允许内网ip访问的实现示例
2022/03/17 Servers
mysql通过group by分组取最大时间对应数据的两种有效方法
2022/09/23 MySQL