判斷方法:1、使用“strtotime("指定年份值-02")”語(yǔ)句將指定年份日期轉(zhuǎn)為Unix時(shí)間戳;2、使用“date("t",時(shí)間戳)==29”語(yǔ)句獲取指定年份中2月的天數(shù),并判斷該天數(shù)是否等于29,如果等于則為閏年,反之則不是閏年。
本教程操作環(huán)境:windows7系統(tǒng)、PHP7.1版、DELL G3電腦
用php判斷年份是不是閏年
閏年的2月有29天,我們可以利用這個(gè)特性,使用date()獲取給定年份$year
中2月所包含的天數(shù),判斷該天數(shù)是否為29天,這樣就可以判斷給定年份$year
是否為閏年了。
實(shí)現(xiàn)代碼:
<?php header("Content-type:text/html;charset=utf-8"); function f($year) { $time = strtotime("{$year}-02"); //取得一個(gè)日期的 Unix 時(shí)間戳; if (date("t", $time) == 29) {//格式化時(shí)間,并且判斷2月是否是29天; echo $year . "是閏年!<br>"; //是29天就輸出時(shí)閏年; } else{ echo $year . "不是閏年!<br>"; } } ?>
測(cè)試一下:
f(2022); f(2021); f(2020); f(2012); f(2010);
分析:
上例中,strtotime("{$year}-02")
語(yǔ)句是將“xxxx-02”格式的日期轉(zhuǎn)化為Unix 時(shí)間戳;然后就可使用date("t",$time)
語(yǔ)句來獲取$year年2月所包含的天數(shù)了,使用if語(yǔ)句判斷該天數(shù)是否等于29天,即可判斷$year是否為閏年。
date()函數(shù)的“t
”字符參數(shù)可以用來獲取給定月份中包含的天數(shù),該函數(shù)中內(nèi)置了許多這樣用來控制輸出日期字符串格式的字符。其實(shí)有一個(gè)字符“L
”就可以用來判斷是否是閏年(如果是閏年則為 1,否則為 0)。
推薦學(xué)習(xí):《PHP視頻教程》