Hallo, ik heb op dit moment deze code:


<?php
$date = date('Y-m-d H:i:s');
echo $date ; 


$startTime = strtotime('2016-01-01'); // Begindatum van weeknummers
$endTime = strtotime('2016-12-31'); // Einddatum van weeknummers

$weeks = array();

while ($startTime < $endTime) {  
    $weeks[] = date('W', $startTime); 
    $startTime += strtotime('+1 week', 0);
}


foreach($weeks as $weeks)
{
    echo 'Week '.$weeks.'<br>';
} 

?>


Hoe kan ik nu bij elk week nummer ook alle datums tonen die bij dat weeknummer horen?
<?php
$date = date('Y-m-d H:i:s');
echo $date ;


$startTime = strtotime('2016-01-01'); // Begindatum van weeknummers
$endTime = strtotime('2016-12-31'); // Einddatum van weeknummers

$weeks = array();

while ($startTime < $endTime) {
$weeks[] = date('W', $startTime);
$startTime += strtotime('+1 week', 0);
}


foreach($weeks as $weeks)
{
$beginWeek = new DateTime();
$beginWeek->setISODate(date('2016') /* of date('Y') */,$weeks);

echo 'Week '.$weeks.' '.$beginWeek->format('d-M-Y').'<br>';
}
?>

(Niet getest, laat het maar even weten)
Bedankt, alleen nu komen alleen de begin datums eruit. Ik zou graag alle datums van die week willen hebben.
<?php
foreach($weeks as $weeks)
{
for($dag=1; $dag<=7; $dag++)
{
echo 'Week: ' . $weeks . ' Dag en Datum: ' . date('D-M-Y', strtotime(date('Y')."W".$weeks.$dag))."<br />";
}
}
?>

Edit: als je een gewone datum wilt tonen, dan pas je het aan naar date('d-m-Y'); , zie hier voor meer mogelijkheden: http://php.net/manual/en/function.date.php
Als ik nu als begin datum 2015-01-01 bijvoorbeeld plaats, krijg ik alleen datums uit 2016. Als ik de einddatum vervolgens om 2016-12-31 zet krijg ik dubbel alles van 2016.

[size=xsmall]Toevoeging op 04/02/2016 18:43:13:[/size]

Ik heb een oplossing! Ik zal deze z.s.m. posten.

Reageren