美文网首页
PHP 日期/时间函数参考

PHP 日期/时间函数参考

作者: xuxin2020 | 来源:发表于2021-03-17 08:52 被阅读0次

    1.checkdate - 验证一个日期的合法性

    checkdate (int $month , int $day , int $year )   
    var_dump(checkdate(8, 31, 2019)); ===>bool(true)
    var_dump(checkdate(2, 29, 2019)); ===>bool(false)
    

    2.date_add - 给一个 DateTime 对象增加一定量的天,月,年,小时,分钟 以及秒。

    date_sub - 对一个 DateTime 对象减去一定量的 日、月、年、小时、分钟和秒。

    date_add (DateTime $object , DateInterval $interval)   
    参数  必需的 描述
    object  是   由 date_create() 返回的 DateTime 类型的对象。此函数会修改这个对象。
    interval    是   DateInterval 对象。
    
    $date = date_create('2019-02-05');
    date_add($date, date_interval_create_from_date_string('10 days'));
    echo date_format($date, 'Y-m-d');   ===> 2019-02-15
    

    3.date_create - 返回一个新的 DateTime 对象

    date_create ([ string $time = "now" [, DateTimeZone $timezone = NULL ]] ) 
    
    $date = date_create('2019-01-01');
    echo date_format($date, 'Y-m-d'); ===>2019-01-01
    

    4.date_date_set - 设置 DateTime 对象的日期

    date_date_set (DateTime $object , int $year , int $month , int $day )   
    
    $date = date_create();
    date_date_set($date, 2019, 2, 3);
    echo date_format($date, 'Y-m-d'); ===> 2019-02-03
    

    5.date_diff - 返回两个DateTimeInterface对象之间的差异。

    date_diff (  DateTimeInterface $datetime1 , DateTimeInterface $datetime2 [, bool $absolute = FALSE ] )
    参数:      必需
    $absolute   否   差异返回是否强制为正
    
    $datetime1 = date_create('2019-10-11');
    $datetime2 = date_create('2019-10-13');
    //$interval = $datetime1->diff($datetime2);
    $interval =date_diff($datetime1,$datetime2);
    print_r($interval);
    
    DateInterval Object
    (
    [y] => 0
    [m] => 0
    [d] => 2
    [h] => 0
    [i] => 0
    [s] => 0
    [f] => 0
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0   //0 正 1 负
    [days] => 2
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
    )
    

    6.date_format - 返回根据给定格式格式化的日期

    date_format (  DateTimeInterface $object , string $format  )   
    
    $date = date_create();
    echo date_format($date, 'Y-m-d H:i:s');
    

    7.date_modify - 修改日期时间对象的值

    date_modify ( DateTime $object , string $modify  )   
    
    $date = date_create('2019-12-12');
    date_modify($date, '+1 day');
    echo date_format($date, 'Y-m-d'); ===> 2019-12-13
    

    8.date_parse - 返回关联数组,其中包含有关给定日期的详细信息

    print_r(date_parse("2019-12-12 10:02:00"));
    
    Array
    (
    [year] => 2019
    [month] => 12
    [day] => 12
    [hour] => 10
    [minute] => 2
    [second] => 0
    [fraction] => 0
    [warning_count] => 0
    [warnings] => Array
    (
    )
    
    [error_count] => 0
    [errors] => Array
    (
    )
    
    [is_localtime] =>
    )
    

    9.date_time_set - 设置 DateTime 对象的时间

    date_time_set ( DateTime $object , int $hour , int $minute [, int $second = 0 [, int $microseconds = 0 ]] )
    
    $date = date_create('2019-01-01');
    date_time_set($date, 14, 55);
    echo date_format($date, 'Y-m-d H:i:s') ===>2019-01-01 14:55:00
    
    date_time_set($date, 14, 55, 24);
    echo date_format($date, 'Y-m-d H:i:s') ===>2019-01-01 14:55:24
    

    10.date_timestamp_get - 获取Unix时间戳

    date_timestamp_get ( DateTimeInterface $object  )   
    
    $date = date_create('2021-01-01 12:22:33');
    echo date_timestamp_get($date);===> 1609474953
    

    11.getdate - 返回一个根据 timestamp 得出的包含有日期信息的关联数组。如果没有给出时间戳则认为是当前本地时间。

    $today = getdate();
    print_r($today);
    
    Array
    (
    [seconds] => 35
    [minutes] => 4
    [hours] => 15
    [mday] => 18
    [wday] => 4
    [mon] => 3
    [year] => 2021
    [yday] => 76
    [weekday] => Thursday
    [month] => March
    [0] => 1616051075
    )
    

    12.strtotime - 将任何字符串的日期时间描述解析为 Unix 时间戳

    strtotime ( string $time [, int $now = time() ] )  
    
    echo strtotime("now"), "<br/>";
    echo strtotime("10 September 2000"), "<br/>";
    echo strtotime("+1 day"), "<br/>";
    echo strtotime("+1 week"), "<br/>";
    echo strtotime("+1 week 2 days 4 hours 2 seconds"), "<br/>";
    echo strtotime("next Thursday"), "<br/>";
    echo strtotime("last Monday"), "<br/>";
    

    相关文章

      网友评论

          本文标题:PHP 日期/时间函数参考

          本文链接:https://www.haomeiwen.com/subject/xtuecltx.html