/** * Get this week's start time and last time according to week * @param int $year Year $weeks = Get_week ($year) * @param such as get start time of 18th week $weeks[18][0] * @param such as Get the last time of 18th week $weeks[18][1]*/ Static Public functionGet_week ($year) { $year _start=$year. "-01-01"; $year _end=$year. "-12-31"; $startday=Strtotime($year _start); if(intval(Date(' N ',$startday)! = ' 1 ') { $startday=Strtotime("Next Monday",Strtotime($year _start));//get the date of the first week of the year } $year _mondy=Date("Y-m-d",$startday);//get the date of the first week of the year $endday=Strtotime($year _end); if(intval(Date(' W ',$endday) = = ' 7 ') { $endday=Strtotime("Last Sunday",Strtotime($year _end)); } $num=intval(Date(' W ',$endday)); for($i= 1;$i<=$num;$i++) { $j=$i-1; $start _date=Date("Y-m-d",Strtotime("$year _mondy $jWeek ")); $end _day=Date("Y-m-d",Strtotime("$start _date+6 Day ")); $week _array[$i] =Array ( Str_replace("-", "",$start _date ),Str_replace("-", "",$end _day)); } return $week _array; }
PHP gets this week's start time and last time based on week number