【php】ある日が月末かどうか判定する
月末とは何か。
「1日足したら翌月になる日が月末」と考えることができるので、こう書ける。
月末判定 – 日付の形をした文字列を渡せるとき。タイムスタンプ使用の例
function isGetsumatsu($a) { return date("d", strtotime($a) + 60 * 60 * 24) == '01'; }
月末判定 – 年、月、日を渡せるとき。カレンダー関数使用の例
function isGetsumatsu($y, $m, $d) { $jd = GregorianToJD($m, $d, $y); $x = cal_from_jd($jd + 1, CAL_GREGORIAN); return ($x['day'] == 1); }
date()関数やカレンダー関数である月の日数を知ることもできるので、それを利用するのも正解。
カレンダー関数を動作させるには、–enable-calendar を指定して PHP をコンパイルする必要があります。 残念ながら使えない環境の場合もあります。
コメント