ホームページ  >  記事  >  バックエンド開発  >  PHPで特定の年の週の開始日と終了日を取得する方法のチュートリアル

PHPで特定の年の週の開始日と終了日を取得する方法のチュートリアル

jacklove
jackloveオリジナル
2018-05-22 17:26:472658ブラウズ

この記事では、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 中国語 Web サイトに注意してください。

PHP 文字列反転インタビューでよくある質問

PHP は文字ストリーム内の最初の非反復文字をどのように取得しますか?

以上がPHPで特定の年の週の開始日と終了日を取得する方法のチュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。