2011-08-11 5 views
2

私は、かなりうまく機能する日付範囲のコードを持っています(datetimeクラスを使用していない、私は5.2に固執しています)。しかし、開始日から2週間ごとに基づいて、週末の前日(たとえば、金曜日)を選択するように変更したいと思います。私のようなmktimearray_searchをやって、その後、すべての土日を見つけることを実験してきた週のx日数ごとに曜日を選択してください

mktime(0, 0, 0, date("m", $date), date("d", $date)-1, date("Y", $date)

すべての土曜日&日曜日を見つけているようだが、私のコードは、単に実際の日付を置き換える代わりに思えます前日を選択してスタイリングする。

私のコードはちょっと混乱しますが、かなり一般的な日付範囲です。 while ($date1 <= $date2) { do stuff here }

開始日から14日ごとに週末の前に金曜日を選択するにはどうすればいいですか?

編集: 以下の回答はすべて問題ありませんでしたが、私が求めていたものではありません。うまくいけば私はここでもっと明確にすることができます。 私は日付範囲内のすべての金曜日を特定するコードを必要としません。日付範囲を指定したいと思います。開始日から+14日(つまり2週間ごと)の金曜日があるたびにそれが目立つようにスタイルを設定する。私は2週間ごとに週末を見つけてスタイルをつけましたが、開始日から2週間前に金曜日の金曜日の選択方法を理解することはできません。

答えて

0

strtotime()を使用して最初の金曜日を取得してから、その関数またはmktime関数を使用して14日間の加算を行うことができます。

0
$thisWeekFriday = strtotime('friday'); 
$twoWeeksFromFriday = $thisWeekFriday + 1209600; //1209600 seconds in two weeks 
echo date('Y-m-d H:i:s', $twoWeeksFromFriday); 
0
$number_of_dates = 10; 
for ($i = 0; $i < $number_of_dates; $i++) { 
    echo date('Y-m-d', strtotime('Friday +' . ($i * 2) . ' weeks')); 
} 

今日この希望出力

2011-08-12 
2011-08-26 
2011-09-09 
2011-09-23 
2011-10-07 
2011-10-21 
2011-11-04 
2011-11-18 
2011-12-02 
2011-12-16 
関連する問題