微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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 = 2001; $year <= 2100; $year++){
	$time = strtotime({$year}-02); //取得一个日期的 Unix 时间戳;
	if (date(t,$time)==29){ //格式化时间,并且判断2月是否是29天;
		 echo $year.是闰年!<br>; //是29天就输出时闰年;
	}
}
?>

我们来看看输出结果:

0.png

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>;
	}
}
?>

我们来看看输出结果:

0-1.png

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

原文地址:https://www.jb51.cc/php/1209858.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐