Christoph Jeschke: Bilder nach gewisser Zeit automatisch vom Server löschen?

Beitrag lesen

Guten Tag,

Wenn ich euch jetzt richtig verstanden habe hat PHP also sogar schon
einen eigenen Befehl für die letzten Dateizugriffe, heißt das das ich
quasi nur eine Textdatei brauche in der ich das Datum des letzten
Aufrufes der Bilder speichere und diese dann mit "int fileatime  ( string
$filename  )" irgendwie auslesen kann? Denn Befehl kenne ich leider nicht
:/

Nein. Diese Metainformation (atime, access time) speichert das Filesystem deines geringsten Misstrauens für dich. fileatime() bezieht diese Information von dort und liefert dir einen sog. Unix Timestamp (vergangene Sekunden seit der Epoche). Mit diesem kannst du rechnen, bzw. diesen kannst mit geeigneten Funktionen als Ausgangbasis für eine Rechnung verwenden. Du brauchst diese Informationen nicht(!) selbst bevorraten.

Du musst dich letztlich nur darum kümmern, dass diese Informationen ausgelesen werden und ein Programm auf Basis dieser Informationen eine Entscheidung trifft: Löschen oder behalten?

Das läuft zurzeit so bei mir, wenn ein Bild hochgeladen wird wird dieses
halt einmal im Original abgelegt und es wird ein Thumbnail erstellt, die
Bildinformationen werden dann in eine Textdatei geschrieben (im Detail
wird der Aufruf (Hits) und der Name des Bildes dort gespeichert).

Das ist kludge.

Jetzt
muss ich ja noch irgendwie das Datum da gespeichert bekommen, wann halt
das Bild zuletzt aufgerufen wurde, richtig? Und dann kann ich erst diese
"int fileatime  ( string $filename  )" Funktion benutzten, oder?

Ja, aber nicht auf die Art, die du hier beschreibst.

Das klingt ja erstmal garnicht so schwer :) Ich würd ja auch mal mein
Script hier posten, aber das soll nicht jeder sehen weil ich schon ne
Menge Arbeit reingesteckt hab. ich werd jetzt erstmal so versuchen, mal
sehen ob ich so was hinbekomme.

Das ist vielleicht sogar besser so.

P.S. Wenn ihr mal paar Ansätze habt wäre natürlich auch nich schlecht,
ist dann immer etwas einfacher für mich ^^

Der Ansatz ist ganz einfach: Du liest die in meiner ersten Antwort angegebenen Manpages und wirst feststellen, dass es genau eines Einzeilers auf der Kommanozeile bedarf, der leicht automatisiert aufgerufen werden kann. Und schon bist du dein Problem los.

Gruß
Christoph Jeschke

--
Zend Certified Engineer
Certified Urchin Admin