php簡單日曆函數_php技巧

來源:互聯網
上載者:User

本文執行個體講述了php實現的行事曆程式。分享給大家供大家參考。具體如下:

<?php /* * php 輸出行事曆程式 */ header("Content-type: text/html;charset=utf-8"); $year=(!isset($_GET['year'])||$_GET['year']=="")?date("Y"):$_GET['year']; $month=(!isset($_GET['month'])||$_GET['month']=="")?date("n"):$_GET['month']; $curUrl=$_SERVER['PHP_SELF'];  if($year<1971){   echo "出錯!";   echo "<BR>";   echo "<a href=",$curUrl,">Back</a>";   exit(); } ?> <table width="200" border="1" cellspacing="0" cellpadding="0" bordercolor="#E7E7E7" style="font-size:12px;" align="center"> <tr align="center"><td colspan="2"> <?php //<-------當月份超出1至12時的處理;開始-------> if($month<1){   $month=12;   $year-=1; } if($month>12){   $month=1;   $year+=1; } //<-------當月份超出1至12時的處理;結束-------> //<---------上一年,下一年,上月,下月的串連處理及輸出;開始---------> echo "<a href=",$curUrl,"?year=".($year-1)."&month=".$month."><<</a>年<a href=",$curUrl,"?year=".($year+1)."&month=".$month.">>></a>"; ?> </td><td colspan="3"><?php echo $year."年".$month."月";?> </td><td colspan="2"> <?php echo "<a href=",$curUrl,"?month=".($month-1)."&year=".$year."><<</a>月<a href=",$curUrl,"?month=".($month+1)."&year=".$year.">>></a>"; //<--------上一年,下一年,上月,下月的串連處理及輸出;結束---------> ?></td></tr> <tr align=center><td><font color="red">日</font></td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr><tr> <?php $d=date("d"); $FirstDay=date("w",mktime(0,0,0,$month,1,$year));//取得任何一個月的一號是星期幾,用於計算一號是由表格的第幾格開始 $bgtoday=date("d"); function font_color($month,$today,$year){//用於計算星期天的字型顏色   $sunday=date("w",mktime(0,0,0,$month,$today,$year));   if($sunday=="0"){     $FontColor="red";   }else{     $FontColor="black";   }   return $FontColor; } function bgcolor($month,$bgtoday,$today_i,$year){//用於計算當日的背景顏色   $show_today=date("d",mktime(0,0,0,$month,$today_i,$year));   $sys_today=date("d",mktime(0,0,0,$month,$bgtoday,$year));   if($show_today==$sys_today){   $bgcolor="bgcolor=#6699FF";   }else{   $bgcolor="";   }   return $bgcolor; } function font_style($month,$today,$year){//用於計算星期天的字型風格   $sunday=date("w",mktime(0,0,0,$month,$today,$year));   if($sunday=="0"){     $FontStyle="<strong>";   }else{     $FontStyle="";   }   return $FontStyle; } for($i=0;$i<=$FirstDay;$i++){//此for用於輸出某個月的一號位置   for($i;$i<$FirstDay;$i++){     echo "<td align=center> </td>\n";   }   if($i==$FirstDay){     echo "<td align=center ".bgcolor($month,$bgtoday,1,$year)."><font color=".font_color($month,1,$year).">".font_style($month,1,$year)."1</font></td>\n";     if($FirstDay==6){//判斷1號是否星期六       echo "</tr>";     }   } } $countMonth=date("t",mktime(0,0,0,$month,1,$year));//某月的總天數 for($i=2;$i<=$countMonth;$i++){//輸出由1號定位,隨後2號直至月尾的所有號數   echo "<td align=center ".bgcolor($month,$bgtoday,$i,$year)."><font color=".font_color($month,$i,$year).">".font_style($month,$i,$year)."$i</font></td>\n";   if(date("w",mktime(0,0,0,$month,$i,$year))==6){//判斷該日是否星期六     echo "</tr>\n";   } } ?> </table>

 php輸出的日曆效果如下圖:

希望本文對大家學習php程式設計有所協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.