zoukankan      html  css  js  c++  java
  • PHP中对日期加减的类,很不错

    PHP中对日期操作的函数功能强大,下面的代码是PHP对日期加减的类,很不错,有需要的朋友可以用一下。
    如何使用这个类呢?请看下面的演示:

    1. $temptime  = time();   
    2. echo   strftime "%Hh%M %A %d %b" , $temptime );   
    3. $date  =  new  DateAccount();   
    4. $temptime  =  $date ->DateAdd( "n"  ,50, $temptime );   
    5. echo   "<p>" ;   
    6. echo   strftime "%Hh%M %A %d %b" , $temptime );   


    如果一切顺利,你可以看到以下结果:
    15h41 Saturday 03 Jun
    16h31 Saturday 03 Jun

    1. $currenttime  = time();   
    2. echo   "Current time: " strftime ( "%Hh%M %A %d %b"  , $currenttime ). "<br>" ;   
    3. $date  =  new  DateAccount();   
    4. $newtime  =  $date ->DateAdd ( "n" ,50 , $currenttime );   
    5. echo   "Time plus 50 minutes: " strftime ( "%Hh%M %A %d %b"  , $newtime ). "<br>" ;   
    6. $temptime  =  $date ->DateDiff ( "n" , $currenttime  , $newtime );   
    7. echo   "Interval between two times: " . $temptime ;   


    如果一切顺利,你可以看到以下结果:
    Current time: 16h23 Saturday 03 Jun
    Time plus 50 minutes: 17h13 Saturday 03 Jun
    Interval between two times: 50

    1. <?php   
    2.   class  DateAccount{   
    3.       function  __construct(){   
    4.      }   
    5.       
    6.       function  DateAdd ( $interval , $number $date ) {   
    7.          $date_time_array  =  getdate ( $date );   
    8.          $hours  =  $date_time_array [ "hours" ];   
    9.          $minutes  =  $date_time_array [ "minutes" ];   
    10.          $seconds  =  $date_time_array [ "seconds" ];   
    11.          $month  =  $date_time_array [ "mon" ];   
    12.          $day  =  $date_time_array [ "mday" ];   
    13.          $year  =  $date_time_array [ "year" ];   
    14.          switch  ( $interval ) {   
    15.            case   "yyyy" $year  += $number break ;   
    16.            case   "q" $month  +=( $number *3);  break ;   
    17.            case   "m" $month  += $number break ;   
    18.            case   "y" :   
    19.            case   "d" :   
    20.            case   "w" $day += $number break ;   
    21.            case   "ww" $day +=( $number *7);  break ;   
    22.            case   "h" $hours += $number break ;   
    23.            case   "n" $minutes += $number break ;   
    24.            case   "s" $seconds += $number break ;   
    25.         }   
    26.          $timestamp  =  mktime ( $hours  , $minutes $seconds , $month  , $day $year );   
    27.          return   $timestamp ;   
    28.    }   
    29.      
    30.     function  DateDiff ( $interval , $date1 , $date2 ) {   
    31.          $timedifference  =  $date2  -  $date1 ;   
    32.          switch  ( $interval ) {   
    33.            case   "w" $retval  =  bcdiv ( $timedifference  ,604800);  break ;   
    34.            case   "d" $retval  =  bcdiv $timedifference ,86400);  break ;   
    35.            case   "h" $retval  =  bcdiv  ( $timedifference ,3600);  break ;   
    36.            case   "n" $retval  =  bcdiv $timedifference ,60);  break ;   
    37.            case   "s" $retval  =  $timedifference break ;   
    38.         }   
    39.          return   $retval ;   
    40.     }   
    41.  }   
    42. ?> 
  • 相关阅读:
    数据库同步软件介绍以及使用说明(SyncNavigator多元异构数据实时同步工具)
    关于异构数据库的不同表之间数据同步的操作细节---syncnavigator同步工具实操
    ASP.NET Core 配置文件(无处不在的依赖注入)
    ASP.NET Core 开源项目整理
    性能差异 ASP.NET WebForm与ASP.NET MVC
    MySQL 分区知识点(三)
    Docker 资料
    MySQL 基础知识(基本架构、存储引擎差异)
    MySQL InnoDB与MyISAM存储引擎差异
    MySQL 索引知识整理(创建高性能的索引)
  • 原文地址:https://www.cnblogs.com/jishu/p/1940082.html
Copyright © 2011-2022 走看看