PHP日期差计算器,计算两个时间相差 年/月/日

1. 计算两个日期相隔多少年,多少月,多少天

  示例:laravel框架实现


    /**
     * 天数计算
     * @return \Illuminate\Http\JsonResponse
     */
    public function loveDateCal()
    {
        $start_date = $this->request('start_date');
        $end_date = $this->request('end_date');

        // 计算两个日期相差 年 月 日
        $diff_date = $this->diffDate($start_date, $end_date);

        $data = [
            'year_number' => intval($diff_date['y']),
            'month_number' => $diff_date['m'],
            'day_number' => $diff_date['d'],
            'total_day_number' => $diff_date['a'],
        ];

        return $this->jsonSuc(['result' => $data ?? []]);
    }

    /**
     * function:计算两个日期相隔多少年,多少月,多少天
     * param string $date1[格式如:2020-11-5]
     * param string $date2[格式如:2023-12-01]
     * return array array('年','月','日');
     */
    function diffDate($date1, $date2)
    {
        $datetime1 = new \DateTime($date1);
        $datetime2 = new \DateTime($date2);
        $interval = $datetime1->diff($datetime2);
        $time['y'] = $interval->format('%Y');
        $time['m'] = $interval->format('%m');
        $time['d'] = $interval->format('%d');
        $time['h'] = $interval->format('%H');
        $time['i'] = $interval->format('%i');
        $time['s'] = $interval->format('%s');
        $time['a'] = $interval->format('%a');    // 两个时间相差总天数
        return $time;
    }

猜你喜欢

转载自blog.csdn.net/qq_32450471/article/details/132167348