php 计算出一年中每周的周一日期

时间:2022-05-05 14:04:22
   最近接到一个任务,归纳起来,就是:要算出每年当中,每周的周一日期。想了一会,看了下date函数,深入了解了一下date函数各个参数的含义之后,终于把这道题做出来了!
   在date()函数中,有一个参数对解决这个题目很关键,就是format字符D。它表示的是星期中的第几天,用文本表示,3个字母:从Mon到Sun。我们可以通过当前时间来算出它处于星期中的第几天,然后与星期一对比,减去对应的天数即可。
   以下部分是代码:
ublic function caluateTime(){
        $now = date("Ymd");//当前时间
        $day  = date("D");
        switch($day){
            case "Mon":
                return $now;
                break;
            case "Tue":
                return date("Ymd",strtotime("-1days",strtotime($now)));
                break;
            case "Wed":
                return date("Ymd",strtotime("-2days",strtotime($now)));
                break;
            case "Thu":
                return date("Ymd",strtotime("-3days",strtotime($now)));
                break;
            case "Fri":
                return date("Ymd",strtotime("-4days",strtotime($now)));
                break;
            case "Sat":
                return date("Ymd",strtotime("-5days",strtotime($now)));
                break;
            case "Sun":
                return date("Ymd",strtotime("-6days",strtotime($now)));
                break;
        }
    }

延伸一下,可以计算出一年中每周任意一天的日期!