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;
    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值