加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php计算两个日期时间差(返回年、月、日)

发布时间:2020-12-12 20:14:52 所属栏目:PHP教程 来源:网络整理
导读:在PHP程序中,很多时候都会遇到处理时间的问题,比如:判断用户在线了多长时间,共登录了多少天,两个帖子发布的时间差或者是不同操作之间的日志记录等等。在文章中,简单地举例介绍了PHP中如何计算两个日期相差 年、月、日。 /** +------------------------

在PHP程序中,很多时候都会遇到处理时间的问题,比如:判断用户在线了多长时间,共登录了多少天,两个帖子发布的时间差或者是不同操作之间的日志记录等等。在文章中,简单地举例介绍了PHP中如何计算两个日期相差 年、月、日。

/**
+----------------------------------------------------------

  • 功能:计算两个日期相差 年 月 日
    +----------------------------------------------------------
  • @param date $date1 起始日期
  • @param date $date2 截止日期日期
    +----------------------------------------------------------
  • @return array
    +----------------------------------------------------------
    /
    function DiffDate($date1,$date2) {
    if (strtotime($date1) > strtotime($date2)) {
    $ymd = $date2;
    $date2 = $date1;
    $date1 = $ymd;
    }
    list($y1,$m1,$d1) = explode('-',$date1);
    list($y2,$m2,$d2) = explode('-',$date2);
    $y = $m = $d = $_m = 0;
    $math = ($y2 - $y1)
    12 + $m2 - $m1;
    $y = round($math / 12);
    $m = intval($math % 12);
    $d = (mktime(0,$d2,$y2) - mktime(0,$d1,$y2)) / 86400;
    if ($d < 0) {
    $m -= 1;
    $d += date('j',mktime(0,$y2));
    }
    $m < 0 && $y -= 1;
    return array($y,$m,$d);
    }
    ?>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读