本文实例讲述了PHP简单日历实现方法。分享给大家供大家参考,具体如下:
运行效果截图如下:
具体代码如下:
<?php
/*
* Created on 2016-7-20
*/
SimCalendar('2016-08');//显示8月份日历
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> </td>';
}
}
echo '</tr>';
}
echo '</tbody>
</table>';
}
?>
希望本文所述对大家PHP程序设计有所帮助。
2025国考·省考课程试听报名