年月の指定からその月を含む週数を算出する
ということでいいんだろうか.
現在以下のようなプログラムを作成しているのですが、うまい作り方がわからず困っています。
1、フォームに何年何月を入力(例:2008/08
2、年のパラメータ(2008年)、月のパラメータ(08)からその月に含まれる新年からの週数(30週目、31週目など)を出す
3、出された週数が月をまたいでいる場合(例:30週目(2008/07/XX?2008/8/XX))は前月の日付も含める30週ー>2008/07/XX?2008/08/XX
31週ー>2008/08/XX?2008/08/XX
32週ー>2008/08/XX?2008/08/XX
.
.
3X週ー>2008/08/XX?2008/09/XXどのようにして作るのが一番いいのか、わかる方いらっしゃいましたらご教授していただけると幸いです。
説明文がわかりにくくて申し訳ありませんがよろしくお願いします
ってことでこれでどうよ.
$ php -r '$yearmonth = "2008/08"; $start = strtotime($yearmonth."/01"); $end = strtotime("+1 month", $start); $start_weeks = strftime("%W", $start); $end_weeks = strftime("%W", $end) - 1; var_dump($start_weeks, $end_weeks);'
ってことであいかわらず可読性が低いので改行を入れてみる.
<?php // @todo 実際には正しい「年/月」の形式かどうかちゃんとチェックすること $yearmonth = "2008/08"; // 開始週の算出 $start = strtotime($yearmonth."/01"); $start_weeks = strftime("%W", $start); // 終了週の算出(-1は翌月1日から1秒引いて月末23:59にする) $end = strtotime("+1 month", $start) - 1; $end_weeks = strftime("%W", $end); var_dump($start_weeks, $end_weeks); ?>
ハイフン区切りの日付にしてたけどスラッシュ区切りに修正.スラッシュ区切りは好きじゃないんだよねー