Heim  >  Artikel  >  Backend-Entwicklung  >  So erstellen Sie einen Kalender in PHP

So erstellen Sie einen Kalender in PHP

小云云
小云云Original
2018-03-17 10:01:331750Durchsuche

In diesem Artikel erfahren Sie hauptsächlich, wie Sie einen Kalender in PHP erstellen. Ich hoffe, er kann Ihnen helfen.

<?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>

Verwandte Empfehlungen:

Eine einfache Möglichkeit, einen Kalender in PHP zu erstellen: Erstellen Sie einen Kalender in PHP_PHP-Tutorial

Das obige ist der detaillierte Inhalt vonSo erstellen Sie einen Kalender in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn