PHP学习笔记之时间strtotime

刚开始是这样写的(时间区间):

 /**
     * 获取查询条件的日期区间
     * @param $date_flag
     * @return array
     */
    public static function conditionDate($date_flag)
    {
        $time = time();
        $start_date = '';
        $end_date = '';
        //今天
        if ($date_flag === 'today') {
            $start_date = date('Y-m-d', $time);
            $end_date = date('Y-m-d', strtotime($start_date) + 86400);
        }
        //昨天
        if ($date_flag === 'yesterday') {
            $end_date = date('Y-m-d', $time);
            $start_date = date('Y-m-d', strtotime($end_date) - 86400);
        }
        //本周
        if ($date_flag === 'week') {
            $week = date('N');
            $end_date = date('Y-m-d', strtotime(date('Y-m-d', $time)) + 86400);
            $start_date = date('Y-m-d', strtotime($end_date) - 86400 * $week);
        }
        //本月
        if ($date_flag === 'month') {
            $start_date = date('Y-m-01', time());
            $end_date = date('Y-m-d', strtotime(date('Y-m-d', $time)) + 86400);
        }
 
        return ['start'=>$start_date, 'end'=>$end_date];
    }

都是用86400来算,上面笔记个性化的是本周开始的时间,本月开始时间,其实拿到这些有跟简单的方法
可以参考 http://www.caizhichao.cn/738.html ,说得很详细了。

猜你喜欢

转载自www.cnblogs.com/zqsb/p/11313730.html
今日推荐