How to create a calendar in PHP

小云云
Release: 2023-03-21 16:44:02
Original
1756 people have browsed it

This article mainly shares with you how to create a calendar in PHP. It mainly shares with you the code for creating a calendar in PHP. I hope it can help you.

<?php
/*
 * 美式日历
 */
//指定日期
$year = 2017;
$month = 10;
//获取时间戳
$firstDayInt = mktime(0,0,0,$month,1,$year);
//获取指定月份天数
$dayInMouth = date(&#39;t&#39;,$firstDayInt);
//获取初始时间为星期几
$firstDay = date(&#39;w&#39;,$firstDayInt); //星期日(0) -> 星期六(6)
//日历行(周)数
$tmpDays = $dayInMouth + $firstDay;
$weeks = ceil($tmpDays/7);  //向上取整
/*
 * 使用二维数组模拟日历,一维为周数,二维为星期数
 * 二维数组[周数][星期数]
 */
$days = [];
//日期计数器
$day_tmp = 0;
for ($i = 0;$i < $weeks;$i ++) {    //0,1,2,3,4 单位:行
    for ($j = 0; $j < 7; $j ++) {   //0,1,2,3,4,5,6 单位:星期数值
/*
 * 判断条件:
 * 1.首行未填充星期数的日期为空值。当$j == $firstDay时,该月初始日期为星期日
 * 2.因周周循环,日期递增,上述函数式值只适用于$i == 0时
 * 3.日期数大于月天数时,在不满足$j变量范围之前,末行填充的日期数为空值
 */
        if(($i == 0 && $j >= $firstDay) || $i > 0 && $day_tmp < $dayInMouth) {
//          日期+1
            $day_tmp ++;
//          例:[第一行][首位] = 1(号)
            $days[$i][$j] = $day_tmp;
        } else {
            $days[$i][$j] = &#39;&#39;; //空值
        }
    }
}
?>
<table border="1" width="500">
    <tr>
        <th colspan="7"><?php echo $year,&#39;年&#39;,$month,&#39;月&#39;; ?></th>
    </tr>
    <tr>
        <th>星期日</th>
        <th>星期一</th>
        <th>星期二</th>
        <th>星期三</th>
        <th>星期四</th>
        <th>星期五</th>
        <th>星期六</th>
    </tr>
<!--    遍历二维数组-->
    <?php
//      遍历日历
        foreach ($days as $week => $weekDays) {
            echo &#39;<tr>&#39;;
//          遍历行日期
            foreach ($weekDays as $day) {
                echo &#39;<td>&#39;,$day,&#39;</td>&#39;;
            }
            echo &#39;</tr>&#39;;
        }
    ?>
</table>
Copy after login

Related recommendations:

Simple method to create a calendar in PHP, create a calendar in php_PHP tutorial

The above is the detailed content of How to create a calendar in PHP. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template