当前位置:首页 > PHP

php实现日历输出

2026-02-15 11:19:52PHP

PHP 实现日历输出

获取当前月份和年份

使用 date() 函数获取当前的年份和月份。

$year = date('Y');
$month = date('m');

计算月份的第一天是星期几

使用 date()strtotime() 函数计算月份的第一天是星期几(0 表示周日,6 表示周六)。

$firstDayOfMonth = date('w', strtotime("$year-$month-01"));

计算月份的总天数

使用 date()t 参数获取当前月份的总天数。

$totalDays = date('t', strtotime("$year-$month-01"));

输出日历表头

输出星期几的表头,通常从周日到周六。

echo "<table border='1'>";
echo "<tr><th>Sun</th><th>Mon</th><th>Tue</th><th>Wed</th><th>Thu</th><th>Fri</th><th>Sat</th></tr>";

输出日历内容

使用循环填充日历表格,确保日期从正确的位置开始,并在每行结束时换行。

echo "<tr>";
$dayCount = 1;

// 填充空白单元格(月份第一天之前的空格)
for ($i = 0; $i < $firstDayOfMonth; $i++) {
    echo "<td></td>";
}

// 填充日期单元格
for ($day = 1; $day <= $totalDays; $day++) {
    echo "<td>$day</td>";
    $dayCount++;

    // 每行 7 天后换行
    if ($dayCount % 7 == 0) {
        echo "</tr><tr>";
    }
}

// 填充剩余空白单元格(月份最后一天之后的空格)
while ($dayCount % 7 != 0) {
    echo "<td></td>";
    $dayCount++;
}

echo "</tr>";
echo "</table>";

完整代码示例

<?php
$year = date('Y');
$month = date('m');
$firstDayOfMonth = date('w', strtotime("$year-$month-01"));
$totalDays = date('t', strtotime("$year-$month-01"));

echo "<table border='1'>";
echo "<tr><th>Sun</th><th>Mon</th><th>Tue</th><th>Wed</th><th>Thu</th><th>Fri</th><th>Sat</th></tr>";

echo "<tr>";
$dayCount = 1;

for ($i = 0; $i < $firstDayOfMonth; $i++) {
    echo "<td></td>";
}

for ($day = 1; $day <= $totalDays; $day++) {
    echo "<td>$day</td>";
    $dayCount++;

    if ($dayCount % 7 == 0) {
        echo "</tr><tr>";
    }
}

while ($dayCount % 7 != 0) {
    echo "<td></td>";
    $dayCount++;
}

echo "</tr>";
echo "</table>";
?>

自定义年份和月份

如果需要指定年份和月份,可以通过变量传递。

$year = 2023; // 自定义年份
$month = 12;  // 自定义月份

添加样式美化

通过 CSS 美化日历表格,使其更美观。

php实现日历输出

echo "<style>
    table {
        border-collapse: collapse;
        width: 300px;
        text-align: center;
    }
    th, td {
        padding: 10px;
        border: 1px solid #ddd;
    }
    th {
        background-color: #f2f2f2;
    }
</style>";

标签: 日历php
分享给朋友:

相关文章

php实现socket

php实现socket

PHP 实现 Socket 通信 PHP 可以通过 socket 扩展实现网络通信,支持 TCP/UDP 协议。以下是实现 Socket 通信的核心步骤和代码示例。 创建 TCP 服务器 // 创建…

php实现定时任务

php实现定时任务

PHP 实现定时任务的几种方法 在 PHP 中实现定时任务可以通过多种方式完成,具体选择取决于项目需求和服务器环境。以下是常见的实现方法: 使用 Cron 任务 Cron 是 Linux 系统中常用…

无限分类实现 php

无限分类实现 php

无限分类的实现方法 无限分类通常用于构建多层级结构的数据,如商品分类、部门架构等。以下是几种常见的实现方式: 邻接列表模式(Adjacency List) 邻接列表是最简单的实现方式,通过在每个记录…

php 路由实现的

php 路由实现的

PHP 路由实现方法 基于原生 PHP 实现路由 创建一个简单的路由解析器,通过解析 URL 路径来调用对应的控制器或函数。 // 定义路由表 $routes = [ '/' => '…

php实现注册登陆

php实现注册登陆

PHP 注册功能实现 创建数据库表结构(MySQL示例): CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, usern…

php实现投票

php实现投票

PHP实现投票功能 数据库设计 创建数据库表存储投票数据,例如: CREATE TABLE `votes` ( `id` int(11) NOT NULL AUTO_INCREMENT,…