php计算两个时间戳之间相差的日时分秒的两种方法

 
更多

php计算两个时间戳之间相差的日时分秒的两种方法。

/**
 * 计算两个时间戳之间相差的日时分秒
 * @param int $unixTime_1 开始时间戳
 * @param int $unixTime_2 结束时间戳
 * @return array
 */
function timeDiff($unixTime_1, $unixTime_2) {
    $timediff = abs($unixTime_2 - $unixTime_1);
    //计算天数
    $days = intval($timediff / 86400);
    //计算小时数
    $remain = $timediff % 86400;
    $hours = intval($remain / 3600);
    //计算分钟数
    $remain = $remain % 3600;
    $mins = intval($remain / 60);
    //计算秒数
    $secs = $remain % 60;

    return ['day' => $days, 'hour' => $hours, 'min' => $mins, 'sec' => $secs];
}

//Array (
//    [day] => 1
//    [hour] => 0
//    [min] => 3
//    [sec] => 31
//)

/**
 * 计算两个时间戳之间相差的日时分秒
 * @param string $date1 开始时间
 * @param string $date2 结束时间
 * @return array
 */
function diffDate($date1, $date2) {
    $datetime1 = new \DateTime($date1);
    $datetime2 = new \DateTime($date2);

    $interval = $datetime1->diff($datetime2);

    $time['year'] = $interval->format('%Y');
    $time['month'] = $interval->format('%m');
    $time['day'] = $interval->format('%d');
    $time['hour'] = $interval->format('%H');
    $time['min'] = $interval->format('%i');
    $time['sec'] = $interval->format('%s');
    $time['days'] = $interval->format('%a'); // 两个时间相差总天数

    return $time;
}

//Array (
//    [year] => 00
//    [month] => 1
//    [day] => 2
//    [hour] => 00
//    [min] => 3
//    [sec] => 31
//    [days] => 33
//)
打赏

本文固定链接: https://www.cxy163.net/archives/3263 | 绝缘体-小明哥的技术博客

该日志由 绝缘体.. 于 2020年05月06日 发表在 PHP, 编程语言 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: php计算两个时间戳之间相差的日时分秒的两种方法 | 绝缘体-小明哥的技术博客
关键字: , , , ,

php计算两个时间戳之间相差的日时分秒的两种方法:等您坐沙发呢!

发表评论


快捷键:Ctrl+Enter