好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

PHP日期时间加减程序代码详解 - php日期

PHP日期时间加减程序代码详解

结合PHP函数date()与strtotime()两个函数来实现大致也是这个意思,代码如下:

<?php   /**     * PHP里的日期加减方法     * 琼台老屋     */   // 第一步,假设有一个时间    $a  =  '2012-04-25 10:10:00' ;       // 第二步,获得这个日期的时间戳    $a_time  =  strtotime ( $a );       // 第三步,获得加五个月后的时间戳    $b_time  =  strtotime ( '+5 Month' , $a_time );       // 第四部,把时间戳转换回日期格式    $b  =  date ( 'Y-m-d H:i:s' , $b_time );   echo   '这是加了五个月后的日期' . $b ;       // 如果你觉得以上代码过长也可以一行搞定    $b  =  date ( 'Y-m-d H:i:s' , strtotime ( '+' . $time . ' Month' , strtotime ( $a )));   echo   '这是加了五个月后的日期' . $b ;   ?> 

常用的计算时间,代码如下:

<?php    date_default_timezone_set( 'PRC' );  //默认时区     echo   "今天:" , date ( "Y-m-d" ,time()), "<br>" ;    echo   "今天:" , date ( "Y-m-d" , strtotime ( "18 june 2008" )), "<br>" ;    echo   "昨天:" , date ( "Y-m-d" , strtotime ( "-1 day" )),  "<br>" ;    echo   "明天:" , date ( "Y-m-d" , strtotime ( "+1 day" )),  "<br>" ;    echo   "一周后:" , date ( "Y-m-d" , strtotime ( "+1 week" )),  "<br>" ;    echo   "一周零两天四小时两秒后:" , date ( "Y-m-d G:H:s" , strtotime ( "+1 week 2 days 4 hours 2 seconds" )),  "<br>" ;    echo   "下个星期四:" , date ( "Y-m-d" , strtotime ( "next Thursday" )),  "<br>" ;    echo   "上个周一:" . date ( "Y-m-d" , strtotime ( "last Monday" )). "<br>" ;    echo   "一个月前:" . date ( "Y-m-d" , strtotime ( "last month" )). "<br>" ;    echo   "一个月后:" . date ( "Y-m-d" , strtotime ( "+1 month" )). "<br>" ;    echo   "十年后:" . date ( "Y-m-d" , strtotime ( "+10 year" )). "<br>" ;    ?>  //输出结果   //今天:2013-06-07   //今天:2008-06-18   //昨天:2013-06-06   //明天:2013-06-08   //一周后:2013-06-14   //一周零两天四小时两秒后:2013-06-16 18:18:29   //下个星期四:2013-06-13   //上个周一:2013-06-03   //一个月前:2013-05-07   //一个月后:2013-07-07   //十年后:2023-06-07  

这里再看一些日期加减函数,代码如下:

//获取当天的星期(1-7)   function  GetWeek( $times )  {  $res  =  date ( 'w' ,  strtotime ( $times ));  if ( $res ==0)  $res =7;  return   $res ;  }  //获取当天时间   function  GetTime( $times )  {  $res  =  date ( 'H:i' ,  strtotime ( $times ));  return   $res ;  }  //获取现在过几月的的时间   function  GetMonth( $Month , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$Month months" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$Month months" ));  return   $res ;  }  //获取当前时间   function  GetCurrentDateTime()  {  $res = date ( "Y-m-d H:i:s" ,time());  return   $res ;  }  //获取当前时间隔几小时之前或之后的时间   function  GetDiffHours( $hours , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$hours hour" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$hours hour" ));  return   $res ;   }  //间隔几分钟之前或之后的时间   function  GetDiffMinute( $Minute , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$Minute minute" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$Minute minute" ));  return   $res ;   }  //间隔几秒之前或之后的时间   function  GetDiffSec( $sec , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$sec second" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$sec second" ));  return   $res ;   }  //间隔几个星期之前或之后的时间   function  GetDiffWeek( $Week , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$Week week" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$Week week" ));  return   $res ;   }  // 间隔几天之间的时间   function  GetDiffDays( $days , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$days day" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$days day" ));  return   $res ;   }  //间隔几年之前或之后的时间   function  GetDiffYears( $year , $type = 'l' )  {  if (! strcmp ( $type , 'b' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "-$year year" ));  if (! strcmp ( $type , 'l' ))  $res = date ( "Y-m-d H:i:s" , strtotime ( "+$year year" ));  return   $res ;   } 

查看更多关于PHP日期时间加减程序代码详解 - php日期的详细内容...

  阅读:57次