Ich habe ein bestimmtes Datum - für dieses Beispiel sagen 6. Juli. Es fällt in Woche 27 im Jahr 2016. Mit PHP 5.5.9 Ich versuche, die 7 Daten, die in dieser Woche auftreten, mit der folgenden Funktion zurückgeben:In PHP, wie verwende ich einen Inkrement-Operator in Kombination mit einer Variablen, ohne eine Inkrement-Operation durchzuführen?
function getStartAndEndDate($week, $year) {
$i=0;
$dto = new DateTime();
$ret[$i] = $dto->setISODate($year, $week)->format('Y-m-d');
$i++;
while ($i < 7){
$ret[$i] = $dto->modify('+' . $i . ' days')->format('Y-m-d');
$i++;
}
return $ret;
}
ich erwarte eine Liste von sieben aufeinanderfolgende Tage, von 2016.07.04 bis 2016-07-10
Stattdessen habe ich folgende Termine empfange: 2016.07.04, 2016- 07-05, 2016-07-07, 2016-07-10 2016-07-14 2016-07-19, 2016-07-25
Ich glaube das folgende l Ine ist die Quelle meines Problems:
$ret[$i] = $dto->modify('+' . $i . ' days')->format('Y-m-d');
Wenn ich statische Werte angeben, funktioniert der Code.
Alle Vorschläge oder Einblicke würden geschätzt.
Danke
Danke Tejaswi und Trincot. Ihre Erklärungen waren beide hilfreich –