首頁  >  文章  >  後端開發  >  PHP巧用date()函數計算閏年,印製21世紀的所有閏年

PHP巧用date()函數計算閏年,印製21世紀的所有閏年

青灯夜游
青灯夜游原創
2021-08-12 14:09:235103瀏覽

在上一篇文章《PHP如何輸出20世紀的所有閏年》中,我們介紹了一種判斷給定年份是不是閏年的方法。這次我們介紹另一種判斷年份是否為閏年的方法。

上文我們介紹了判斷閏年的一種通用演算法,可以運用在其他語言中;本文為大家介紹一種PHP特有的方法,我們利用內建函數date()來判斷閏年,然後找出21世紀的所有閏年並印製出來。

想法:

  • 閏年的2月有29天,我們可以利用這個特性,使用date()取得給定年份$year中2月所包含的天數,判斷該天數是否為29天,這樣就可以判斷給定年份$year是否為閏年了。

  • 使用for循環給出21世紀的所有年份(2001年~2100年),然後使用上面的方法一一判斷是否為閏年,將符合要求(是閏年)的年份輸出。

實作方法:

<?php
header("Content-type:text/html;charset=utf-8");
for($year = 2001; $year <= 2100; $year++){
	$time = strtotime("{$year}-02"); //取得一个日期的 Unix 时间戳;
	if (date("t",$time)==29){ //格式化时间,并且判断2月是否是29天;
		 echo $year."是闰年!<br>"; //是29天就输出时闰年;
	}
}
?>

我們來看看輸出結果:

PHP巧用date()函數計算閏年,印製21世紀的所有閏年

##OK,實作了!上例中,

strtotime("{$year}-02")語句是將「xxxx-02」格式的日期轉換為Unix 時間戳記;然後就可使用date("t" ,$time)語句來取得$year年2月所包含的天數了,使用if語句判斷該天數是否等於29天,即可判斷$year是否為閏年。

date()函數的「

t」字元參數可以用來取得給定月份中包含的天數,該函數內建了許多這樣用來控制輸出日期字符字串格式的字元。其實有一個字元「L」就可以用來判斷是否是閏年(如果是閏年則為 1,否則為 0)。

因此使用date()函數也可以這樣列印21世紀的所有閏年

<?php
header("Content-type:text/html;charset=utf-8");
for($year = 2001; $year <= 2100; $year++){
	$time = strtotime("{$year}-02");
	if (date("L",$time)){
		   echo $year."是闰年<br>";
	}
}
?>

我們來看看輸出結果:

PHP巧用date()函數計算閏年,印製21世紀的所有閏年

好了,今天就說到這裡了,有其他想知道的,可以點擊這個哦。 → →

php影片教學#

以上是PHP巧用date()函數計算閏年,印製21世紀的所有閏年的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn