Home  >  Article  >  Backend Development  >  Tutorial on how to get the start date and end date of the week of a certain year in PHP

Tutorial on how to get the start date and end date of the week of a certain year in PHP

jacklove
jackloveOriginal
2018-05-22 17:26:472679browse

This article explains how to get the start date and end date of the first week of a certain year in PHP.

The example is as follows:

/*

* Get the start date and end date of the first week of a certain year

* @param int $year

* @param int $week;

*/

public function weekday($year,$week=1){
 
$year_start = mktime(0,0,0,1,1,$year);
 
$year_end = mktime(0,0,0,12,31,$year);

// Determine whether the first day is the beginning of the first week

if (intval(date('W',$year_start))===1){
 
$start = $year_start;//把第一天做为第一周的开始
 
}else{
 
$week++;
 
$start = strtotime('+1 monday',$year_start);//把第一个周一作为开始
 
}

// The start time of the first week

if ($week===1){
 
$weekday['start'] = $start;
 
}else{
 
$weekday['start'] = strtotime('+'.($week-0).' monday',$start);
 
}

// The end time of the first week

$weekday['end'] = strtotime('+1 sunday',$weekday['start']);
 
if (date('Y',$weekday['end'])!=$year){
 
$weekday['end'] = $year_end;
 
}
 
return $weekday;
 
}

/**

* Calculate how many weeks there are in a year, each week starts on Monday,

* If the last day is after Thursday (including weeks 4) Count as a complete week, otherwise it will not be included in the last week of the year

* If the first day is before Thursday (including Thursday), it will be considered as a complete week, otherwise it will not be included in the calculation The first week of the year

* @param int $year

* return int

*/

public function week($year){
 
$year_start = mktime(0,0,0,1,1,$year);
 
$year_end = mktime(0,0,0,12,31,$year);
 
if (intval(date('W',$year_end))===1){
 
return date('W',strtotime('last week',$year_end));
 
}else{
 
return date('W',$year_end);
 
}
 
}

This article explains how to get the start date and end date of the first week of a certain year in PHP Tutorial, please pay attention to php Chinese website for more related knowledge.

Questions often encountered in php string reversal interviews

How does PHP get the first non-repeating character in the character stream

PHP uses one line of code to delete all files in a directory

The above is the detailed content of Tutorial on how to get the start date and end date of the week of a certain year in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn