<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      計算2000年01月01日起到指定日的天數

      [摘要]這是一個計算2000年01月01日起到指定日的天數的函數 <br> (算頭也算尾)日期格式為:YYYY-MM-DD <br> <?php // 計算從2000年01月01日開始到某日的天數 function cal_start2end(end_day,start...
      這是一個計算2000年01月01日起到指定日的天數的函數
      <br>
      (算頭也算尾)日期格式為:YYYY-MM-DD
      <br>

      <?php
      //    計算從2000年01月01日開始到某日的天數

      function cal_start2end($end_day,$start_day)
      {


      $start_day=ereg_replace("-","",$start_day);
      $end_day=ereg_replace("-","",$end_day);



      if($end_day>=$start_day)
      {    //    截止日期大于開始日期
          if(substr($end_day,0,4)==substr($start_day,0,4))
              {

      if( is_int(substr($end_day,0,4)/4) )
          $leap_day=29;    //leap year
      else
          $leap_day=28;


      //            //同一年

              if(substr($end_day,4,2)==substr($start_day,4,2))
                  {
      //            the same month  
                  $endday_from_startday=$end_day-$start_day+1;

                  }
              else
                  {
      //             not same month


                  switch (substr($end_day,4,2))
                      {
                      case "01":
                              $endday_from_newyear=substr($end_day,6,2)+1;
                              break;
                      case "02":
                              $endday_from_newyear=substr($end_day,6,2)+31;
                              break;
                      case "03":
                              $endday_from_newyear=substr($end_day,6,2)+$leap_day+31;
                              break;
                      case "04":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*2;
                              break;
                      case "05":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*2+30;
                              break;
                      case "06":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*3+30;
                              break;
                      case "07":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*2+30*2;
                              break;
                      case "08":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*3+30*2;
                              break;
                      case "09":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*2;
                              break;
                      case "10":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*3;
                              break;
                      case "11":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*4;
                              break;
                      case "12":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*5;
                              break;
                      }
                  $endday_from_startday=$endday_from_newyear;
                  }

      return ($endday_from_startday);

              }
          else
              {
      //        不同年!

      $differ_year=substr($end_day,0,4)-substr($start_day,0,4);

      $how_int_4_floor=floor($differ_year/4)+1; // 向下取整
      $how_int_4_ceil=ceil($differ_year/4)+1; // 向上取整



      if($how_int_4_floor==$how_int_4_ceil)
          $how_leap_year=$how_int_4_floor-1;
      else
          $how_leap_year=$how_int_4_floor;

      $how_noleap_year=$differ_year-$how_leap_year;

      $differ_year2day=$how_noleap_year*365+$how_leap_year*366;



      if( is_int(substr($end_day,0,4)/4) )
          $leap_day=29;    //leap year
      else
          $leap_day=28;



              if(substr($end_day,4,2)==substr($start_day,4,2))
                  {
      //            the same month  
                  $endday_from_startday=$differ_year2day+ substr($end_day,4,2);

                  }
              else
                  {
      //             not same month


                  switch (substr($end_day,4,2))
                      {
                      case "01":
                              $endday_from_newyear=substr($end_day,6,2)+1;
                              break;
                      case "02":
                              $endday_from_newyear=substr($end_day,6,2)+1+31;
                              break;
                      case "03":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31;
                              break;
                      case "04":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*2;
                              break;
                      case "05":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*2+30;
                              break;
                      case "06":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*3+30;
                              break;
                      case "07":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*2+30*2;
                              break;
                      case "08":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*3+30*2;
                              break;
                      case "09":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*2;
                              break;
                      case "10":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*3;
                              break;
                      case "11":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*4;
                              break;
                      case "12":
                              $endday_from_newyear=substr($end_day,6,2)+1+$leap_day+31*5+30*5;
                              break;
                      } //End of switch


          $endday_from_startday=$endday_from_newyear+$differ_year2day;
          }    //End of  not same month  



      return ($endday_from_startday);


              } //End of year
      }        //End of  $end_day>=$start_day



      } //End of function


      $start_day="2000-01-01";

      $end_day="2011-01-01";

      echo "您輸入的是:".$end_day."<br>\n";
      $endday_from_startday=cal_start2end($end_day,$start_day);

      echo "該日距離$start_day 共 ".$endday_from_startday." 天";

      ?>
      <br><br><br><br>時間太少了,那位大蝦可以修改為計算任意兩日期之間的間隔最好!。。。 


      日韩精品一区二区三区高清