比较不错的一款php日历代码
复制代代码如下:
/**
* カレンダー
*
* Copyright(c) 2007 by Chen Yixin (Deep Sky) All Rights Reserved
* 著者に連絡するには、{@link mailto:shenkong@php.net} までご連絡ください。
* @著者 Chen Yixin (深宇宙)
*/
if (function_exists('date_default_timezone_set')) {
date_default_timezone_set('Asia/重慶');
}
$date = isset($_GET['date']) ? $_GET['日付'] : 日付('Y-m-d');
$date = getdate(strtotime($date));
$end = getdate(mktime(0, 0, 0, $date['mon'] 1, 1, $date['year']) - 1);
$start = getdate(mktime(0, 0, 0, $date['mon'], 1, $date['year']));
$pre = date('Y-m-d', $start[0] - 1);
$next = date('Y-m-d', $end[0] 86400);
$html = '
- | ';< | ';|
' 。 $v 。 ' | ';' 。 $v 。 ' | ';'; |
复制代代码如下:
/**
* カレンダー
*/
if (function_exists('date_default_timezone_set')) {
date_default_timezone_set('Asia/重慶');
}
$date = isset($_GET['date']) ? $_GET['日付'] : 日付('Y-m-d');
$date = getdate(strtotime($date));
$end = getdate(mktime(0, 0, 0, $date['mon'] 1, 1, $date['year']) - 1);
$start = getdate(mktime(0, 0, 0, $date['mon'], 1, $date['year']));
$pre = date('Y-m-d', $start[0] - 1);
$next = date('Y-m-d', $end[0] 86400);
$html = '
- | ';< | ';|
' 。 $v 。 ' | ';' 。 $v 。 ' | ';'; |
复制代代码如下:
function calendar()
{
if($_GET['ym'])
{
$year = substr($_GET[' ym'],0,4);
$month = substr($_GET['ym'],4,(strlen($_GET['ym'])-4);
if($month>12)
{
$year = floor($month/12);
$month = $month % 12;
}
if($year > 2030) $year = 2030;
if($year < 1980) $year = 1980;
}
$year = isset($year) ? $year : date('Y');
$month = isset($month) ? $month : date('n');
if($year==date('Y') &&$month==date('n')) $today = date('j');
if($month-1 == 0)
$prevmonth = ($year - 1)."12";
else $prevmonth = $year.($month - 1);
if($month 1 == 13)
$nextmonth = ($year 1)."1";
else $nextmonth = $year.($month 1);
$prevyear = ($year - 1).$month;
$nextyear = ($year 1).$month;
echo <<
<<
<
$year - $month
>
>>
日
一
二
三
四
五
六
VKN;
$nowtime = mktime(0,0,0,$month,1,$year);//当月1号转秒
$daysofmonth = date(t,$nowtime);//当月天数
$weekofbeginday = date(w,$nowtime);//当月第一天は星期几
$weekofendday = date(w,mktime(0,0,0,$month 1,0,$year)) ;//当月最終後一天は星期几
$daysofprevmonth = date(t,mktime(0,0,0,$month,0,$year));//上个月天数
$ count = 1;//计数
//列出上月后几天
for($i = 1 ; $i <= $weekofbeginday ; $i )
{
echo "< ;td class='othermonth'>".($daysofprevmonth-$weekofbeginday $i)."";
$count ;
}
//当月全部
for($i = 1 ; $i <= $daysofmonth ; $i )
{
$css = ($count%7==0 || $count %7==1)?"平日":"通常日";
if($i == $today) $css .= "今日";
echo "".$i." ";
if($count%7==0) echo "";
$count ;
}
//下月前几天
for ($i = 1;$i <= 6-$weekofendday;$i )
{
echo "".$i." ";
}
echo <<
VKN;
}
?>