2016-08-20 2 views
-1

Wie berechne ich das Anfangs- und Enddatum einer Woche nach Monat, Jahr und Wochennummer? Das Jahr ist eine 4-stellige Ganzzahl, z. B. 2016; der Monat ist eine ganze Zahl, Bereich 1-12; Die Woche ist eine Ganzzahl im Bereich von 1-5.Anfangs- und Enddatum von Monat zu Woche Nummer des Monats in PHP erhalten

Ich habe bereits den Code-Block:

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; 
} 

Wie kann ich oder diese Funktion neu schreiben? Wir nicht tun Anfragen

+2

arbeiten. Was hast du probiert –

+0

Correcedt Grammatik; überflüssige Phrasen entfernt; verbesserte Formatierung – Prune

Antwort

1

Was Ihre Funktion in der obigen Frage habe ich keine Ahnung, aber die Woche unter der Annahme, beginnt am Montag und endet am Sonntag, so etwas wie dies könnte

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

Danke Kumpel, es hat mir wirklich geholfen :) –

Verwandte Themen