PHP日历

<?php
SimCalendar('2011-08');
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>&nbsp;</td>';
                }
            }
            echo '</tr>';
        }
    
    echo '</tbody>
</table>';
}
?>

转载于:https://my.oschina.net/flowf/blog/31929

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值