[PHP]閏年を判定する関数。

PHPだとすでに関数が用意されてました。
便利なものです。

ソース:PHP: cal_days_in_month – Manual
cal_days_in_month()
今後100年分をチェックするコードを書いて見ました。
$thisYear = date('Y');

for($j = 1; $j <= 100; $j++){
	$nextYear = ((int)$thisYear + $j - 1);
	
	echo '<tr>';
	echo '<th>' . $nextYear . '</th>';
	
	for($i = 1; $i <= 12; $i++){
		echo (date('L', mktime(0,0,0,1,1,$nextYear)) && $i == 2) ? '<td class="red">' : '<td>';
		
		echo cal_days_in_month(CAL_GREGORIAN, $i, $nextYear) . '</td>';
	}
	
	echo '</tr>' . "\n";
}

今回気づいたこと。

2100年は閏年ではない。

今回調べきれなかったこと。

PHP内での閏年の判定は、どのように計算しているのかがわからなかった。
(それを計算する必要がなさそうだったので、途中で調べることを辞めた。)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA