Archive for the ‘php’ Category

PHP潤年日子function

June 18, 2007
Noted from 

// 閏年なら1を返す

function uruu($year){
	$rc = 0;
	if($year % 4 == 0){$rc=1;}
	if($year % 100 == 0){$rc=0;}
	if($year % 400 == 0){$rc=1;}
	return $rc;
}

// 各月の日数を返す

function mdays($mon){
	switch ($mon) {
	case 1: $rc=31; break;
	case 2: $rc=28; break;
	case 3: $rc=31; break;
	case 4: $rc=30; break;
	case 5: $rc=31; break;
	case 6: $rc=30; break;
	case 7: $rc=31; break;
	case 8: $rc=31; break;
	case 9: $rc=30; break;
	case 10: $rc=31; break;
	case 11: $rc=30; break;
	case 12: $rc=31; break;
	default: echo "error!\n"; exit;
	}
	return $rc;
}

// 1900年から誕生年までの日数を積算 (由1900年開始的日子數)
for($y=1900; $y<$byear; $y++){
	$b = $b + 365 + uruu($y);
}

// 1月1日から誕生月の前月までの日数を積算(由1月1日開始的日子數)
for($m=1; $m<$bmonth; $m++){
	$b = $b + mdays($m);
	// 2月なら閏年を調整
	if ($m == 2) {
		$b = $b + uruu($y);
	}
}