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 相关文章推荐
php 无限极分类
Mar 27 PHP
php+mysql写的简单留言本实例代码
Jul 25 PHP
PHP中设置时区,记录日志文件的实现代码
Jan 07 PHP
解析php中两种缩放图片的函数,为图片添加水印
Jun 14 PHP
PHP获取网页标题的3种实现方法代码实例
Apr 11 PHP
php模仿asp Application对象在线人数统计实现方法
Jan 04 PHP
浅析THINKPHP的addAll支持的最大数据量
Feb 03 PHP
PHP程序员的技术成长规划
Mar 25 PHP
php 常用的系统函数
Feb 07 PHP
laravel 判断查询数据库返回值的例子
Oct 11 PHP
解决在Laravel 中处理OPTIONS请求的问题
Oct 11 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
Dec 01 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
跨浏览器开发经验总结(四) 怎么写入剪贴板
2010/05/13 Javascript
jquery下实现overlay遮罩层代码
2010/08/25 Javascript
读jQuery之十三 添加事件和删除事件的核心方法
2011/08/23 Javascript
HTML上传控件取消选择
2013/03/06 Javascript
JavaScript Math.ceil() 函数使用介绍
2013/12/11 Javascript
解决jquery版本冲突的有效方法
2014/09/02 Javascript
javascript实现按回车键切换焦点
2015/02/09 Javascript
jQuery基于ajax实现星星评论代码
2015/08/07 Javascript
JavaScript多图片上传案例
2015/09/28 Javascript
js实现跨域的多种方法
2015/12/25 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
2016/09/23 Javascript
浅谈JS中String()与 .toString()的区别
2016/10/20 Javascript
半个小时学json(json传递示例)
2016/12/25 Javascript
用js屏蔽被http劫持的浮动广告实现方法
2017/08/10 Javascript
vue 1.x 交互实现仿百度下拉列表示例
2017/10/21 Javascript
浅谈vue-cli 3.0.x 初体验
2018/04/11 Javascript
自己动手封装一个React Native多级联动
2018/09/19 Javascript
vue结合element-ui使用示例
2019/01/24 Javascript
vue-router路由模式详解(小结)
2019/08/26 Javascript
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
pandas基于时间序列的固定时间间隔求均值的方法
2019/07/04 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
2019/08/12 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
django的模型类管理器——数据库操作的封装详解
2020/04/01 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
Python3自带工具2to3.py 转换 Python2.x 代码到Python3的操作
2021/03/03 Python
What is the purpose of Void class? Void类的作用是什么?
2016/10/31 面试题
东方红海科技面试题软件测试方面
2012/02/08 面试题
测试驱动开发的主要步骤是什么
2014/12/10 面试题
2013的个人自我评价
2013/12/26 职场文书
中式婚礼主持词
2014/03/13 职场文书
聘任书模板
2014/03/29 职场文书
公司离职证明样本
2014/09/13 职场文书
自习课吵闹检讨书范文
2014/09/26 职场文书
基于go interface{}==nil 的几种坑及原理分析
2021/04/24 Golang
MYSQL如何查看操作日志详解
2022/05/30 MySQL