Lieber Helmut,
# fehlerhaft: #$date = date('Ymd');
das wage ich zu bezweifeln. Das Datum nimmt immer den Timestamp von „jetzt“.
Suchst Du das hier?
$months_backwards = [];
$number_of_months_including_current = 3;
for ($i = 0; $i < $number_of_months_including_current; $i++) {
$months_backwards[$i] = date(
"Ym",
strtotime(
date(
'Ym01',
strtotime('this month')
). " -$i months"
)
);
}
print_r($months_backwards);
Array
(
[0] => 202307
[1] => 202306
[2] => 202305
)
Liebe Grüße
Felix Riesterer