Hi,
Wie errechnet man aus einer Kalenderwoche das erste Datum ?
aus einer DB-Tabelle habe ich ein einen Wert, der in der Form
generiert und abgespeichert wurde, also keine MYSLDATETIME oder Timestamp
nun muß ich das erste Datum/Timestamp dieser Woche bestimmen
da ich nicht weiss, wie ich ohne Schleife und Test dies generiere wäre mein Ansatz etwa
Ist jetzt nicht getestet --> aber dass muss doch auch simpler gehen!
Oder?
Wie errechnet man aus einer Kalenderwoche das erste Datum ?
aus einer DB-Tabelle habe ich ein einen Wert, der in der Form
PHP-Code:
yearweek() bzw date('Y').date('W') // also etwa 200525 oder 200302
nun muß ich das erste Datum/Timestamp dieser Woche bestimmen
da ich nicht weiss, wie ich ohne Schleife und Test dies generiere wäre mein Ansatz etwa
PHP-Code:
$year = floor($yweek/100);
$week = $yweek - ($year * 100);
$ca_month = $week/4 - 1;
$day = 1;
$ts = mktime(0,0,0,$ca_month, $day,$year );
$check = date("W",$ts)
while( $check != $week ) {
if ($check > $week) {
$day--;
} else {
$day++;
}
$ts = mktime(0,0,0,$ca_month, $day,$year );
}
$year = date ("Y",$ts);
$month = date ("m",$ts);
$day = date ("d",$ts);
$wd = date("w",mktime(0,0,0,$month,$day,$year));
while ($wd != 1) {
// Suche Montag
if ($wd<1) {$day++;}
else {$day--;}
$wd = date("w",mktime(0,0,0,$month,$day,$year));
}
Oder?
Kommentar