>  기사  >  백엔드 개발  >  PHP에서 특정 연도의 주의 시작 날짜와 종료 날짜를 얻는 방법에 대한 튜토리얼

PHP에서 특정 연도의 주의 시작 날짜와 종료 날짜를 얻는 방법에 대한 튜토리얼

jacklove
jacklove원래의
2018-05-22 17:26:472678검색

이 기사에서는 PHP에서 특정 연도의 주의 시작 날짜와 종료 날짜를 얻는 방법을 설명합니다.

예제는 다음과 같습니다.

/*

* 특정 연도의 주의 시작 날짜와 종료 날짜를 가져옵니다.

* @param int $year

* @param int $week of

*/

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

// 첫날이 첫 주의 시작인지 확인

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

// 첫 주의 시작 시간

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

// 첫 주의 종료 시간

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

/**

* 1년이 몇 주인지 계산합니다. 각 주는 월요일에 시작됩니다.

* 마지막 날이 목요일(목요일 포함) 다음이면 일주일로 계산하고, 그렇지 않으면 일주일로 계산하지 않습니다. 한 해의 마지막 주로 계산됩니다

* 첫날이 목요일(목요일 포함) 이전이면 전체 주로 계산되고, 그렇지 않으면 첫 번째 주에 포함되지 않습니다

* @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);
 
}
 
}

이 글에서는 특정 연도의 첫 번째 주의 시작 날짜와 종료 날짜를 PHP로 얻는 방법을 설명합니다. 더 많은 관련 지식을 원하시면 결제하세요. PHP 중국어 웹사이트에 주목하세요.

PHP 문자열 반전 인터뷰에서 자주 접하는 질문

PHP는 문자 스트림에서 첫 번째 비반복 문자를 어떻게 얻나요?

위 내용은 PHP에서 특정 연도의 주의 시작 날짜와 종료 날짜를 얻는 방법에 대한 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.