当前位置:首页 > 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 参数获取当前月份的总天数。

php实现日历输出

$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>";

输出日历内容

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

php实现日历输出

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 美化日历表格,使其更美观。

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实现树

php实现树

PHP实现树结构的方法 在PHP中实现树结构通常可以通过递归或迭代的方式完成。以下是几种常见的实现方法: 递归实现树结构 递归是处理树结构的自然方式,尤其适用于具有未知深度的树。 class Tr…

php 实现无限分类

php 实现无限分类

无限分类的实现方法 无限分类通常用于构建多层级结构的数据,如商品分类、菜单管理等。以下是几种常见的实现方式: 邻接列表模型(Adjacency List) 这是最简单的实现方式,每个分类记录存储其父…

php 实现面包屑导航

php 实现面包屑导航

实现面包屑导航的方法 面包屑导航(Breadcrumb Navigation)是一种常见的网站导航方式,用于显示用户当前页面的路径。以下是几种在 PHP 中实现面包屑导航的方法。 基于 URL 路径…

php实现扫码登录

php实现扫码登录

PHP 实现扫码登录的方案 扫码登录通常基于以下流程:用户访问网页生成二维码(含唯一标识),手机扫码后确认登录,服务器验证并完成登录状态同步。以下是具体实现方法: 生成二维码与唯一标识 使用 PHP…

php 抢购实现

php 抢购实现

抢购系统设计要点 高并发抢购系统的核心在于解决超卖问题、保证数据一致性以及提升系统性能。PHP实现需结合数据库、缓存和队列等技术。 数据库层面优化 使用InnoDB引擎的事务特性确保数据一致性。商品…

vue实现滑动日历

vue实现滑动日历

实现滑动日历的基本思路 使用Vue实现滑动日历需要结合触摸事件(touchstart、touchmove、touchend)或第三方库(如hammer.js)处理滑动逻辑,动态计算日期数据并渲染视图。…