首页 > 开发 > PHP > 正文

php日历制作代码分享

2024-05-04 22:22:57
字体:
来源:转载
供稿:网友

 


calendar.class.php

  代码如下:
 <?php
class Calendar {
  private $year; //当前的年
  private $month; //当前的月
  private $start_weekday; //当月的第一天对应的是周几
  private $days; //当前月一共多少天

  function __construct(){
   $this->year=isset($_GET["year"]) ? $_GET["year"] : date("Y");
   $this->month=isset($_GET["month"]) ? $_GET["month"] : date("m");

   $this->start_weekday=date("w", mktime(0, 0, 0, $this->month, 1, $this->year));
   $this->days=date("t", mktime(0, 0, 0, $this->month, 1, $this->year));
  }

  function out(){
   echo '<table align="center">';
   $this->chageDate("test.php");
   $this->weeksList();
   $this->daysList();
   echo '</table>';
  }

  private function weeksList(){
   $week=array('日','一','二','三','四','五','六');

   echo '<tr>';
   for($i=0; $i<count($week); $i++)
    echo '<th class="fontb">'.$week[$i].'</th>';

   echo '</tr>';
  }

  private function daysList(){
   echo '<tr>';
   //输出空格(当前一月第一天前面要空出来)
   for($j=0; $j<$this->start_weekday; $j++)
    echo '<td> </td>';


   for($k=1; $k<=$this->days; $k++){
    $j++;
    if($k==date('d'))
     echo '<td class="fontb">'.$k.'</td>';
    else
     echo '<td>'.$k.'</td>';

    if($j%7==0)
     echo '</tr><tr>';

   }

   //后面几个空格
   while($j%7!==0){
    echo '<td> </td>';
    $j++;
   }

   echo '</tr>';
  }

  private function prevYear($year, $month){
   $year=$year-1;

   if($year < 1970)
    $year = 1970;

   return "year={$year}&month={$month}"; 
  }


  private function prevMonth($year, $month){
   if($month == 1) {
    $year = $year -1;

    if($year < 1970)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表