PHP - 如何检查一年是否是二等分(即闰年)?

Y K*_*Kal 16 php

如何检查php中的一年是否是二等分(即闰年)?

McH*_*bie 25

您可以使用PHP的date()函数来执行此操作...

// L will return 1 or 0 for leap years
echo date('L');

// use your own timestamp
echo date('L', strtotime('last year'));

// for specific year
$year = 1999;
$leap = date('L', mktime(0, 0, 0, 1, 1, $year));
echo $year . ' ' . ($leap ? 'is' : 'is not') . ' a leap year.';
Run Code Online (Sandbox Code Playgroud)

让我知道如果这对你有这个诀窍,干杯!

更新:添加特定年份的示例

  • 只是为了让您知道,2400 将返回 0。因此它在那里失败。 (2认同)

Eva*_*ski 14

分年闰年的另一个名称.使用L格式化程序,$year您测试的年份在哪里:

echo (date('L', strtotime("$year-01-01")) ? 'Yes' : 'No');
Run Code Online (Sandbox Code Playgroud)

为了调整日历和季节之间的不一致,朱利安历法使用了希腊天文学家Sosigene的计算,并基于365.25天年的采用:3年365天,然后是366天年,补充日被添加总是在2月24日之后(性交日历Martiis = 3月日历前的第六天)被称为bis sexto(第六天之二),因此是闰日的平分年和平分日的名称.这一年分为12个月,交替31天和30天,2月分为正常年份,分别为29天和30天.

后来,当第八个月献给皇帝奥古斯都(8月)时,这个月是31天,以匹配七月,这个月献给朱利叶斯凯撒.这就是为什么二月是28天,在平分年份有29天.

http://news.softpedia.com/news/The-History-of-Modern-Calendar-and-Bisect-Year-79892.shtml


小智 7

function is_leap_year($year)
{
    return ((($year % 4) == 0) && ((($year % 100) != 0) || (($year %400) == 0)));
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,此代码比此处给出的其他代码(使用日期转换)快 4.9 倍,并且从 101 年到 99999 输出完全相同的结果。 (2认同)