PHP获取指定日期段内每一天的日期和天数

源码技巧6年前 (2019-10-17)8400
/**
     * 获取指定日期段内每一天的日期和天数
     * @param  Date  $startdate 开始日期 格式化时间 Y-m-d H:i:s
     * @param  Date  $enddate   结束日期 格式化时间 Y-m-d H:i:s
     * @return Array
     */
    public static function getDateFromRange($startdate, $enddate){
        $startdate = date('Y-m-d 00:00:00',strtotime($startdate));
        $enddate = date('Y-m-d 23:59:59',strtotime($enddate));
        $stimestamp = strtotime($startdate);
        $etimestamp = strtotime($enddate);
        if($etimestamp<$stimestamp) return [];
        // 计算日期段内有多少天
        $days = (int)ceil(($etimestamp-$stimestamp)/86400);
        // 保存每天日期
        $date = array();
        for($i=0; $i<$days; $i++){
            $date[] = date('Y-m-d', $stimestamp+(86400*$i));
        }
        $data = [
            'dates' => $date,
            'days' => $days,
        ];
        return $data;
    }


“PHP获取指定日期段内每一天的日期和天数” 的相关文章

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。