Welcome 微信登录

首页 / 网页编程 / PHP / 两个php日期控制类实例

本文实例讲述了两个php日期控制类。分享给大家供大家参考。具体分析如下:
由于工作需要我找了二个时间日期控制,这个不用js只要php实现的,因为要带参考查询操作,感兴趣的朋友可以参考一下,我自己用的是第二个,所以第二个己作了修改.
实例一,代码如下:
复制代码 代码如下:<?php
class Calendar
{
 var $month;
 var $year;
 
    function __construct($year,$month)
    {
     $this->year=$year;
  $this->month=$month;
 }
 
 function endday()
 {
  $daydate=date("d",mktime(0,0,0,$this->month,35,$this->year));
  $endday=35-$daydate;
  return $endday;
 }
 
 function oneday_week()
 {
  $oneday_week=date("w",mktime(0,0,0,$this->month,1,$this->year));
  return $oneday_week;
 }
 
 function title_link()
 {
  if(!isset($this->month) && !isset($this->year))
  {
   $this->year  = date("Y");
   $this->month = date("m");
        }
  
  $lastmonth=$this->month-1;
  $nextmonth=$this->month+1;
  $lastyear=$this->year;
  $nextyear=$this->year;
 
        if($this->month <= 1)
        {
         $lastmonth=12;
   $nextmonth=$this->month+1;
   $lastyear=$this->year-1;
   $nextyear=$this->year;
  }
        elseif ($this->month >= 12) 
        {
         $lastmonth=$this->month-1;
         $nextmonth=1;
   $lastyear=$this->year;
   $nextyear=$this->year+1;
        }
 
        $str ="<td colspan="2"><div align="center"><a href=$PHP_SELF?year=".$lastyear."&month=".$lastmonth."&><<<</a></div></td>";
  $str.="<td colspan="3"><div align="center">".$this->year."--".$this->month."</div></td>";
  $str.="<td colspan="2"><div align="center"><a href=$PHP_SELF?year=".$nextyear."&month=".$nextmonth."&>>>></a></div></td>";
  return $str;
 }
 
 function Show_Calendar()
 {
        echo "<table width="181" border=5><tr class="tr.title">".$this->title_link()."</tr><tr>";
        $weekarray=array("日","一","二","三","四","五","六");
        
        for($k=0;$k<=6;$k++)
        {
         echo "<td><div align="center">".$weekarray[$k]."</div></td>";
        }
        echo "</tr>";
        
        for($i=0;$i<=5;$i++)
        {
         echo "<tr>";
         for($j=1;$j<=7;$j++)
         {
     $math=( $j - $this->oneday_week() ) + 7 * $i;
    
          echo "<td><div align="center">";
    
          if($math <= $this->endday() and $math>=1)
     {
   echo $math;
     }
    
         echo "</div></td>";
         }    
         echo "</tr>";     
        }
  echo "</table>";
 }
}
$calendar=new Calendar($_GET["year"],$_GET["month"]);
$calendar->month=$_GET["month"];
$calendar->year=$_GET["year"];
$calendar->Show_Calendar();
?>
实例二,代码如下:
复制代码 代码如下:<?php
header("content-type:text/html;charset=utf-8");
?>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
 
<link href="statics/css/zhaoshang.css" rel="stylesheet" type="text/css">
<div class="rili">
<?php
if(!emptyempty($_GET)){
    $year = isset($_GET["year"])?$_GET["year"]:date("y");
    $month = isset($_GET["month"])?$_GET["month"]:date("m");
 $day = isset($_GET["day"])?$_GET["day"]:date("d");
}
if(emptyempty($year)){
    $year = date("Y");
}
if(emptyempty($month)){
    $month = date("m");
}
 
if(emptyempty($month)){
    $days = date("d");
}
 
$start_weekday = date("w",mktime(0,0,0,$month,1,$year));
//echo $start_weekday;
$days = date("t",mktime(0,0,0,$month,1,$year));
//echo $days;
$week = array("日","一","二","三","四","五","六");
$i = 0;
$k = 1;
$j = 0;
echo "<table >";
echo "<tr><td colspan = 7 style ="text-align:center; width:250px; background:#d5e5f6; border-bottom:1px solid #333366;">".$year."年".$month."月"."</td></tr>";
echo "<tr>";
for($i = 0;$i < 7;$i++){
    echo "<td>".$week[$i]."</td>";
}
echo "</tr>";
echo "<tr>";
for($j = 0;$j < $start_weekday;$j++){
    echo "<td style="color:#f1f8fc;">".$j."</td>";
}
while($k <= $days){
    if($k == $day){
        echo "<td style="color:red"><a href="?year=".$year."&month=".$month."&day=".$k.""><span style="color:red">".$k."</span></a></td>";
    }else{
        echo "<td><a href="?year=".$year."&month=".$month."&day=".$k."">".$k."</a></td>";
    }
    if(($j+1) % 7 == 0){
        echo "</tr><tr>";
    }
    $j++;
    $k++;
}
while($j % 7 != 0){
    echo "<td style="color:#f1f8fc;">".$j."</td>";
    $j++;
}
echo "</tr>";
 
echo "<tr style="background:#d5e5f6;">";
echo "<td><a href=?".lastYear($year,$month).">"."<<"."</a></td>";
echo "<td><a href=?".lastMonth($year,$month).">"."<"."</a></td>";
echo "<td colspan = 3 style="width:105px;" >";
echo "<form name = "myform" method = "GET">";
echo "<select name = year  class="year">";
for($start_year = 1970;$start_year<2039;$start_year++){
 $selected="";
 if( $year== $start_year ) { $selected="selected"; }
 echo "<option value =". $start_year." ".$selected.">".$start_year."</option>"." nt";
}
echo "</select>";
echo "<select name = month class="month">";
for($start_month = 1;$start_month<=12;$start_month++){
 $selected="";
 if( $month== $start_month ) { $selected="selected";}
 echo "<option value = ".$start_month." ".$selected.">".$start_month."</option>"." nt";
}
echo "</select>";
/*echo "月";*/
/*echo "<input type = "submit" name = "search" value = "查询">";*/
echo "</form>";
echo "</td>";
echo "<td><a href=?".nextYear($year,$month).">".">>"."</a></td>";
echo "<td><a href=?".nextMonth($year,$month).">".">"."</a></td>";
echo "</tr>";
echo "</table>";
 
function lastYear($year,$month){
 $year = $year-1;
 return "year=$year&month=$month";
}
function lastMonth($year,$month){
 if($month == 1){
  $year = $year -1;
  $month = 12;
 }else{
  $month--;
 }
 return "year=$year&month=$month";
}
function nextYear($year,$month){
 $year = $year+1;
 return "year=$year&month=$month";
}
function nextMonth($year,$month){
 if($month == 12){
  $year = $year +1;
  $month = 1;
 }else {
  $month++;
 }
 return "year=$year&month=$month";
}
 
?>
</div>
希望本文所述对大家的php程序设计有所帮助。