Get week number (in the year) from a date PHP

前端 未结 17 2074
星月不相逢
星月不相逢 2020-11-27 14:54

I want to take a date and work out its week number.

So far, I have the following. It is returning 24 when it should be 42.



        
17条回答
  •  青春惊慌失措
    2020-11-27 15:23

    function last_monday($date) 
    {
        if (!is_numeric($date))
            $date = strtotime($date);
        if (date('w', $date) == 1)
            return $date;
        else
            return date('Y-m-d',strtotime('last monday',$date));
    }
    $date = '2021-01-04';  //Enter custom date
    $year = date('Y',strtotime($date));
    $date1 = new DateTime($date);
    $ldate = last_monday($year."-01-01");
    $date2 = new DateTime($ldate);
    $diff = $date2->diff($date1)->format("%a");
    $diff = $diff/7;
    $week = intval($diff) + 1;
    echo $week;
    //Returns 2.
    

提交回复
热议问题