php 根据时间戳计算 是哪年 哪个月份的 第几周
核心思想是,本周周一为基准 判断是在哪年 哪个月份的 第几周
function week_of_month($time)
{
$wk_day = date('w', $time) ?: 7; //今天周几
$mondy_time = $time - ($wk_day-1) * 86400;//本周一对应时间戳
$first_mondy = strtotime("first Monday", strtotime(date('Y-m-01',$mondy_time)) - 1);//所在月份第1个周一0点的时间戳
$week_number = intval(($time - $first_mondy) / 86400 / 7) + 1;//得出第几周(从0开始所以要加1)
return ['year' => date('Y',$mondy_time), 'month' => date('m',$mondy_time), 'week_number' => $week_number];
}