复制代码 代码如下
分类:热门资源

?phpclass Calendar{ /** * @desc :简单的日历类,供大家学习 * @author :Allen Wu * @Email :wukewei00o@126.com * @Date :2008-09-12 * @version :v1.0 */ /*定义变量年、月、日*/ private $year,$month,$day; /*定义数组星期并初始化*/ private $week = array(星期日,星期一,星期二,星期三,星期四,星期五,星期六); /*定义数组月份并初始化*/ private $monthes = array(01=一月, 02=二月, 03=三月, 04=四月, 05=五月, 06=六月, 07=七月, 08=八月, 09=九月, 10=十月, 11=十一月, 12=十二月 ); function __construct(){ $year = isset($_POST['year']) ? $_POST['year'] : date('Y'); $month = isset($_POST['month']) ? $_POST['month'] : date('m'); $day = isset($_POST['day']) ? $_POST['day'] : date('d'); $this-set($year, $month, $day); } /** * @desc 设置年、月、日的值 * @params String $year * @params String $month * @params String $day * @return */ private function set($year, $month, $day){ $this-year = $year; $this-month = $month; $this-day = $day; } /** * @desc 获取年、月、日的值并以数组形式返回 * @params Array $info * @retrun Array */ function get(array $info){ $info = array('year' = $this-year, 'month'= $this-month, 'day' = $this-day); return $info; } /** * @desc 获得指定日期的星期值 * @params String $year * @params String $month * @params String $day * @return String */ private function getWeek($year, $month, $day){ $weekday = date(w,mktime(0,0,0,$month,$day,$year)); return $weekday; } /** * 输出日历,有兴趣的可以改进! * 其实这不是一个方法,不希望在类里出现html和样式 * 有兴趣的可以改进下!给大家起个抛砖引玉的作用 * */ public function out(){ $firstDay = $this-getWeek($this-year, $this-month, 1); echo div style=margin:0;border:1 solid black;width:300;font:9pt. form action=$_SERVER[PHP_SELF] method=post style=margin:0. select name=month onchange=this.form.submit();; /*打印12个月*/ for($month = 1; $month = 12; $month++){ $tmp = sprintf(%02d, $month); if(strcmp($tmp, $this-month) == 0){ $select = selected style=background-color:#c0c0c0; }else{ $select = ; } echo option value=$tmp $select.$this-monthes[$tmp]./optionrn; } echo /selectselect name=year onchange=this.form.submit();; /*打印年份,前后10年*/ for($year = $this-year - 10; $year $this-year + 10; $year++){ if($year 2037){break;} if($year 1970){continue;} if(strcmp($year, $this-year) == 0){ $select = selected style=background-color:#c0c0c0; }else{ $select = ; } echo option value=$year $select$year/optionrn; } echo /select/formtable border=0 align=center; /*打印星期标头*/ for($week = 0; $week count($this-week); $week++){ echo td.$this-week[$week]; } /*打印所有日期*/ for($tmpd = 1; $tmpd = date(t,mktime(0,0,0,$this-month,$this-day,$this-year)); $tmpd++){ if(strcmp($tmpd, $this-day) == 0){ //获得当前日期,做标记 $flag=bgcolor='#ff0000'; }else{ $flag= bgcolor='#ffffff'; } if($tmpd == 1){ echo tr; //补充打印 for($i = 0; $i $firstDay; $i++){ echo td; } } if(strcmp($this-getWeek($this-year, $this-month, $tmpd), 0) == 0){ echo trtd align=center $flag$tmpd; }else{ echo td align=center $flag$tmpd; } } echo /table/div; }}$obj = new Calendar();$obj-out();?

本文实例讲述了两个php日期控制类。分享给大家供大家参考。具体分析如下:

由于工作需要我找了二个时间日期控制,这个不用js只要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 ="

<<<<>

";
  $str.="

".$this->year."--".$this->month."<>

";
  $str.="

>>><>

";
  return $str;
 }
 
 function Show_Calendar()
 {
        echo "

".$this->title_link()."

";
        $weekarray=array("日","一","二","三","四","五","六");
        
        for($k=0;$k<=6;$k++)
        {
         echo "

".$weekarray[$k]."<>

";
        }
        echo "

";
        
        for($i=0;$i<=5;$i++)
        {
         echo "

";
         for($j=1;$j<=7;$j++)
         {
     $math=( $j - $this->oneday_week() ) + 7 * $i;
    
          echo "

";
    
          if($math <= $this->endday() and $math>=1)
     {
   echo $math;
     }
    
         echo "<>

";
         }    
         echo "

";     
        }
  echo "

";
 }
}
$calendar=new Calendar($_GET['year'],$_GET['month']);
$calendar->month=$_GET['month'];
$calendar->year=$_GET['year'];
$calendar->Show_Calendar();
?>
实例二,代码如下:
复制代码 代码如下:

header("content-type:text/html;charset=utf-8");
?>

 

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 '

';
echo '

'.$year.'年'.$month.'月'.'

';
echo '

';
for($i = 0;$i < 7;$i++){
    echo '

'.$week[$i].'

';
}
echo '

';
echo '

';
for($j = 0;$j < $start_weekday;$j++){
    echo '

'.$j.'

';
}
while($k <= $days){
    if($k == $day){
        echo '

'.$k.'

';
    }else{
        echo '

'.$k.'

';
    }
    if(($j+1) % 7 == 0){
        echo '

';
    }
    $j++;
    $k++;
}
while($j % 7 != 0){
    echo '

'.$j.'

';
    $j++;
}
echo '

';
 
echo '

';
echo "

".'<.%22)

';
echo "

".'.%22)

';
echo '

';
echo '

';
echo '';
for($start_year = 1970;$start_year<2039;$start_year++){
 $selected='';
 if( $year== $start_year ) { $selected='selected'; }
 echo ''.$start_year.''." nt";
}
echo '';
echo '';
for($start_month = 1;$start_month<=12;$start_month++){
 $selected='';
 if( $month== $start_month ) { $selected='selected';}
 echo ''.$start_month.''." nt";
}
echo '';
/*echo '月';*/
/*echo '';*/
echo '

';
echo '

';
echo "

".'>>'.'.%22)

';
echo "

".'>'.'.%22)

';
echo '

';
echo '

';
 
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";
}
 
?>
<>

希望本文所述对大家的php程序设计有所帮助。

本文由威尼斯在线注册平台发布于热门资源,转载请注明出处:复制代码 代码如下

上一篇:威尼斯正规官网应该下载三拾一个人VC9线程安全的(PHP 5.3 下一篇:没有了
猜你喜欢
热门排行
精彩图文