php实现判断闰年
判断闰年的规则
闰年遵循以下规则:
- 能被4整除但不能被100整除的年份是闰年。
- 能被400整除的年份也是闰年。
使用条件语句实现
通过if-else条件判断实现闰年检测:

function isLeapYear($year) {
if (($year % 4 == 0 && $year % 100 != 0) || $year % 400 == 0) {
return true;
} else {
return false;
}
}
简化版实现
利用布尔值直接返回计算结果:

function isLeapYear($year) {
return ($year % 4 == 0 && $year % 100 != 0) || $year % 400 == 0;
}
使用DateTime类验证
PHP内置的DateTime类可以验证日期有效性:
function isLeapYear($year) {
return checkdate(2, 29, $year);
}
测试示例
验证函数正确性的测试代码:
$testYears = [2000, 2004, 1900, 2001];
foreach ($testYears as $year) {
echo "$year is " . (isLeapYear($year) ? "" : "not ") . "a leap year.\n";
}
注意事项
- 输入参数应为整数类型,字符串数字需要先转换
- 公元前的年份需要特殊处理
- 格里高利历在1582年才开始使用,历史日期需注意历法差异





