今夜は焼肉

久しぶりの焼肉です。

19:30の予約の前に、めちゃくちゃに、おなかが減りました。

机の隅にある、カップラーメンが誘惑しています。

 

この空腹感ってダイエットに似てるのでしょうか?

自分との戦いです。

 

29292929292929292929292929292929292929292929292

↓まじめな内容

指定した日付が存在するかをチェックする関数です。

LAMP環境ですが言語はphpではなくperlです。

どういうときに使うかと

開始日と終了日をプルダウンで選択する際に

11月31日に設定するとデータベースに書き込む際

年月日が0000:00:00となってしまいます。

mysqlで想定していますが、データベースにもよると思います。

オラクルは平気みたい?

これをクリアするための処理を入れてあげると

エラーメッセージを促がせます。

 

sub day_exists {
  my($year, $month, $day) = @_;
  my(@mlast) = (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

  if ($month < 1 || 12 < $month) { return 0; }
  if ($month == 2) {
      if ( *1 || ($year % 400 == 0) ) {
        $mlast[1]++;
      }
    }
 
  if ($day < 1 || $mlast[$month-1] < $day) { return 0; }
  return 1;
}

呼び出し元

$result = &day_exists($nen, $tsuki, $hi);

 

 

*1:$year % 4 == 0) && ($year % 100 != 0