Week berekenen aan de hand van de datum van vandaag
Ik ben bezig met een systeem dat de netjes de dagen van maandag t/m zondag onder elkaar moet lijsten. Dus, als het vandaag maandag is, dat de data's van dinsdag,woensdag,donderdag,vrijdag,zaterdag,zondag berekend worden. Is het vandaag dinsdag, dan moet maandag,woensdag,donderdag,vrijdag,zaterdag,zondag berekend worden...
Iemand die daarmee kan helpen..?
Bedankt,
Jeroen
EDIT:
Scenarioschets:
Het is vandaag zondag, aan de hand daarvan moet Maandag berekend worden, maar ook dinsdag,woensdag,donderdag,vrijdag,zaterdag. Zondag hebben we al, dus die hoeft niet.
Ik zou dit kunnen doen d.m.v. +1 en -1 etc. Maar dat lijkt me niet de netste methode...
Gewijzigd op 01/01/1970 01:00:00 door Jeroen Langenberg
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$week=array(Sun=>6,Mon=>1,Tue=>1,Wed=>1,Thu=>1,Fri=>1,Sat=>1); //geen idee waarom alleen zondag 6 is??
$offset=ABS(date("w")-$week[date("D")]);
$laatstemaandag=date("d m Y",strtotime ("-".$offset." day"));
for($i=0;$i<=6;$i++){
$verschil=$i-$offset;
if($verschil<0){ //php kan niet +-
$date=strtotime ($verschil." day");
}else{
$date=strtotime ("+".$verschil." day");
}
if(date("D")==Date("D",$date)){
echo'<b>'.Date("D d m Y",$date).'</b><br>';
}else{
echo Date("D d m Y",$date).'<br>';
}
}
?>
$week=array(Sun=>6,Mon=>1,Tue=>1,Wed=>1,Thu=>1,Fri=>1,Sat=>1); //geen idee waarom alleen zondag 6 is??
$offset=ABS(date("w")-$week[date("D")]);
$laatstemaandag=date("d m Y",strtotime ("-".$offset." day"));
for($i=0;$i<=6;$i++){
$verschil=$i-$offset;
if($verschil<0){ //php kan niet +-
$date=strtotime ($verschil." day");
}else{
$date=strtotime ("+".$verschil." day");
}
if(date("D")==Date("D",$date)){
echo'<b>'.Date("D d m Y",$date).'</b><br>';
}else{
echo Date("D d m Y",$date).'<br>';
}
}
?>
Gewijzigd op 01/01/1970 01:00:00 door bart van der veen
Code (php)
ps. Nu heb ze natuurlijk wel in het engels, maar daar kun je zelf weer even een functie voor schrijven om dat op te lossen.
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
@blanche: wat ga jij doen als de dag van vandaag 30 is? dan berekent uw script dagen 30 tot 37 van deze maand ... :-S
Draai volgend scriptje maar eens, dan zie je dat het werkt:
@blance, de vraag was om alle weken op maandag te laten beginnen...