2016-08-20 25 views
-1

月、年、週の順番で週の開始日と終了日を計算するにはどうすればよいですか?年は、4桁の整数(2016など)です。月は1〜12の整数です。週は1〜5の整数です。PHPの月の開始日と終了日を取得する

私はすでにこのコードブロックを持っている:

function getStartAndEndDate($week, $year) 
{ 
    $time = strtotime("1 $year", time()); 
    $day = date('w', $time); 
    $time += ((7 * $week) + 1 - $day) * 24 * 3600; 
    $return[0] = date('Y-n-j', $time); 
    $time += 6 * 24 * 3600; 
    $return[1] = date('Y-n-j', $time); 
    return $return; 
} 

どのように私は、この機能を使用するか、書き換えることができますか?問題の上記あなたの関数については

+2

を働くかもしれないと仮定。何を試しましたか –

+0

Correcedt文法;冗長フレーズを削除しました。フォーマットが改善されました。 – Prune

答えて

1

私は考えているが、週は月曜日に始まり、日曜日に終了し、このようなものは、私たちは要求をしない

function getFirstandLastDate($year, $month, $week) { 

    $thisWeek = 1; 

    for($i = 1; $i < $week; $i++) { 
     $thisWeek = $thisWeek + 7; 
    } 

    $currentDay = date('Y-m-d',mktime(0,0,0,$month,$thisWeek,$year)); 

    $monday = strtotime('monday this week', strtotime($currentDay)); 
    $sunday = strtotime('sunday this week', strtotime($currentDay)); 

    $weekStart = date('d M y', $monday); 
    $weekEnd = date('d M y', $sunday); 

    return $weekStart . ' - ' . $weekEnd; 
} 

echo getFirstandLastDate(2016, 1, 1); 
+0

おかげで本当に助けてくれました:) –

関連する問題