<?php/** * * 我的日历 * date_default_timezone_set date mktime * @param int $year * @param int $month * @param string $timezone * @author fc_lamp * @blog: http://www.cnblogs.com/roucheng/ */function myCalender($year = '', $month = '', $timezone = 'Asia/Shanghai'){ date_default_timezone_set ( $timezone ); $year = abs ( intval ( $year ) ); $month = abs ( intval ( $month ) ); //是否是32位机 if (is32()) { if ($year = 2038) { $year = date ( 'Y' ); } } else { if ($year <= 0) { $year = date ( 'Y' ); } } if ($month 12) { $month = date ( 'm' ); } //上一年 $pretYear = $year - 1; //上一月 $mpYear = $year; $preMonth = $month - 1; if ($preMonth 12) { $nextMonth = 1; $mnYear = $nextYear; } //日历头 $html = <<<HTML<table width="500" border="1"> <tr align="center"> <td>上一年</td> <td>上一月</td> <td>回到今天</td> <td>下一月</td> <td>下一年</td> </tr> <tr align="center"> <td colspan="5">{$year}年{$month}月</td> </tr> <tr> <td colspan="5"> <table width="100%" border="1"> <tr align="center"> <td>星期一</td> <td>星期二</td> <td>星期三</td> <td>星期四</td> <td>星期五</td> <td>星期六</td> <td>星期天</td> </tr>HTML; $currentDay = date ( 'Y-m-j' ); //当月最后一天 $lastday = date ( 'j', mktime ( 0, 0, 0, $nextMonth, 0, $year ) ); //循环输出天数 $day = 1; $line = ''; while ( $day <= $lastday ) { $cday = $year . '-' . $month . '-' . $day; //当前星期几 $nowWeek = date ( 'N', mktime ( 0, 0, 0, $month, $day, $year ) ); if ($day == 1) { $line = '<tr align="center">'; $line .= str_repeat ( '<td> </td>', $nowWeek - 1 ); } if ($cday == $currentDay) { $style = 'style="color:red;"'; } else { $style = ''; } $line .= "<td>$day</td>"; //一周结束 if ($nowWeek == 7) { $line .= '</tr>'; $html .= $line; $line = '<tr align="center">'; } //全月结束 if ($day == $lastday) { if ($nowWeek != 7) { $line .= str_repeat ( '<td> </td>', 7 - $nowWeek ); } $line .= '</tr>'; $html .= $line; break; } $day ++; } $html .= <<span style="color:transparent">本文来源gaodai#ma#com搞*!代#%^码$网!</span><strong>搞代gaodaima码</strong><<HTML </table> </td> </tr></table>HTML; return $html;}/** * * 检测是否是32位机 * @author fc_lamp * @blog: fc-lamp.blog.163.com */function is32(){ $is32 = False; if (strtotime ( '2039-10-10' ) === False) { $is32 = True; } return $is32;}
以上就介绍了php Calender日历)代码,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。