Alle Dateien löschen die älter sind als 10 Minuten

Hallo,

Ich will ALLE Dateien in einem Ordner löschen die älter als 10 Minuten sind.

Soweit bin ich

<?php
    $dir = $_SERVER["DOCUMENT_ROOT"].dirname($_SERVER['PHP_SELF']).'/cache/';
    $folder = dir($dir);
    while ($dateiname = $folder->read()) {
        if (filetype($dir.$dateiname) != "dir") {
            if (strtotime("+10 minutes") >
                @filemtime($dir.$dateiname)) {
                if (@unlink($dir.$dateiname) != false)
                echo $dateiname.' wurde gelöscht $dir<br>';
                else
                echo $dateiname.' konnte nicht
                    gelöscht werden $dir<br>';
                }
        }
    }
    echo "Fertig $dir";
    $folder->close();
    exit;
?>

Leider werden alle Dateien in dem Ordner gelöscht , auch die die nur 30 Sekunden als sind zb. !
Hab auch schon +1 day, +1 hour versucht und das auch in der Mehrzahl also hours usw.

Wo ist der fehler ?
Danke

Lass mal die @'s vor den Funktionen weg, damit unterdrückst Du mögliche Fehlermeldungen.

Außerdem prüfe mal per Debugging was für Zeiten genau rauskommen. Beispiel:

[php]echo „->“.strtotime(„+10 minutes“)." > „.filemtime($dir.$dateiname).“<-";[/php]

oder einfach date() benutzen!?

@threadi

Hier die Ausgabe…

[FONT=Times New Roman]Fertig /var/www/no-public/cache/->1330729246 > 1330728582<-[/FONT]

Passt doch oder ?

@igestalten

etwa so ?

if (date("+10 minutes")

Ändere den Debug-Code um wie folgt um und poste das Ergebniss.

( Nebenbei, pack den Code IN die Schleife. )

[PHP]
echo „->“.strtotime(„+10 minutes“)." > „.filemtime($dir.$dateiname).“ ( Größer: „.( strtotime( „+10 minutes“ ) > filemtime( $dir.$dateiname ) )? ‚Ja‘:‚Nein‘.“ <-";
[/PHP]

P.S. Könnten paar Anführungszeichenfehler drine sein, sollten aber leicht korrigierbar sein. Es soll einfach für jede Schleife angezeigt bekommen, ob die laut System über 10 Minuten liegt oder nicht.

P.P.S. Oh mist… jetzt bin ich durcheinander… Als nicht Multitasking Mensch 10 Sachen gleichzeitig zu versuchen, kann nur Schief gehen…

find VERZEICHNIS -mmin +10 -type f -print0 | xargs -0 -r rm