Ohmann, ich finde einfach nicht den Fehler...
Hallo erstmal
Ich versuche mit schon den ganzen Nachmittag mit meinen PHP-Kenntnissen einen Cronjob zusammenzustückeln, der aus dem Verzeichnis uploaded alle Dateien löscht, die ein bestimmtes Datum im Namen haben.
Mein Problem:
Der Code löscht nur die heutigen Bilder: 20100528
Wenn ich aber in der preg_match-Funktion die Variable $loeschdatum mit beispielsweise "20100527" ersetze, löscht er mir durchaus die gestrigen Bilder.
Und hier mein Code:
Browserausgabe:
Woran könnte es liegen, dass er mir nicht alle Bilder der letzten 4 Tage löscht?
Könnte es sein, dass "$file=$d->read()" die Ursache ist? Vielleicht sollte ihc mir meinen Code nicht aus 10 Jahre alten Forenbeiträgen zusammenstückeln...
Vielen Dank für eure Zeit und Hilfe,
André
Hallo erstmal

Ich versuche mit schon den ganzen Nachmittag mit meinen PHP-Kenntnissen einen Cronjob zusammenzustückeln, der aus dem Verzeichnis uploaded alle Dateien löscht, die ein bestimmtes Datum im Namen haben.
Mein Problem:
Der Code löscht nur die heutigen Bilder: 20100528
Wenn ich aber in der preg_match-Funktion die Variable $loeschdatum mit beispielsweise "20100527" ersetze, löscht er mir durchaus die gestrigen Bilder.
Und hier mein Code:
PHP-Code:
$speichertage = 4;
$d = dir("uploaded");
$heute = date(Ymd);
//Löschvorgang ausführen
$loeschdatum = $heute;
for ($i=0; $i<=$speichertage; $i++) {
echo ($loeschdatum . " ");
while($file=$d->read()) {
if (preg_match("/". $loeschdatum . "/i",$file)) unlink("uploaded/" . $file);
}
$loeschdatum--;
}
Code:
2010052820100527201005262010052520100524
Könnte es sein, dass "$file=$d->read()" die Ursache ist? Vielleicht sollte ihc mir meinen Code nicht aus 10 Jahre alten Forenbeiträgen zusammenstückeln...
Vielen Dank für eure Zeit und Hilfe,
André
Kommentar