PHPで月末が何日かを取得する

PHPで指定した月の月末が何日かを取得してくるスクリプト

$day = date("d", mktime(0, 0, 0, $month  + 1, 0, $year) );

$month,$yearにそれぞれ取得したい年月を入れます。2月の月末を取得するためには3月の0番目の日となるため、$month + 1を行っています。

PHPのマニュアルにも載っている方法ですが、

指定した月の最後の日は次の月の -1 番目の日ではなく、"0" 番目の日 として表すことが可能です。以下の例はともに文字列"The last day in Feb 2000 is: 29" を出力します。

<?php
$lastday 
mktime(000302000);
echo 
strftime("Last day in Feb 2000 is: %d"$lastday);
$lastday mktime(0004, -312000);
echo 
strftime("Last day in Feb 2000 is: %d"$lastday);
?>

また、date関数には"t"オプションがあり、これを使うこともできます。

$day = date("t", mktime(0, 0, 0, $month  + 1, 0, $year) );

[php]

投稿日:08年10月14日 15:20:51

トラックバックURL

コメントする

名前

メールアドレス

URL

コメント (HTMLは使えません)