站长资讯网
最全最丰富的资讯网站

PHP巧用date()函数计算闰年,打印21世纪的所有闰年

在上一篇文章《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 = 1901; $year <= 2000; $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 = 1901; $year <= 2000; $year++){ 	$time = strtotime("{$year}-02"); 	if (date("L",$time)){ 		   echo $year."是闰年<br>"; 	} } ?>

我们来看看输出结果:

PHP巧用date()函数计算闰年,打印21世纪的所有闰年

好了,今天就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号