developers-forum.de

Normale Version: Aktuellstes Bild immer als current.* speichern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hi JK,

ich hab direkt nochmal einen Wunsch:

Also, eine Webcam legt alle 10 Sekunden ein Bild auf einem Webspace ab, nun möchte ich dass immer das aktuellste Bild kopiert und als current.* gespeichert wird (in dem Fall hier ein *.jpg).

Nach 10 Sek. wenn dann ein neueres Bild da ist, soll das kopiert werden und als current.jpg gespeichert werden (das alte überschrieben oder vorher gelöscht).

Jetzt bin ich mal auf deine Lsg. gespannt. Winken
Hallo,

da du ja CronJobs hast, würde ich es mit 'nem Skript ähnlich dem folgenden probieren.

Code:
#!/usr/bin/php

<?php

$filename = "";

if ($handle = opendir('/path/to/files')) {
    while (false !== ($file = readdir($handle))) {
        // check if file is newer
        if (filemtime($file) > filemtime($filename)) {
              $filename = $file;
        }

    }

    closedir($handle);

    copy($filename, "current.jpg");
}

?>


Es könnte passieren, das mal eine Datei übersprungen wird, wenn sich die Ausführungszeiten vom Anlegen oder Verschieben leicht verzögern, ist aber wahrscheinlich nicht so wild.

N43

und das dann alle X Sekunden ausführen lassen ?
Warning: filemtime() [function.filemtime]: stat failed for 2010-06-04_23-01-07.jpg in /var/www/web13/html/cam/rename.php on line 8

Warning: copy() [function.copy]: The first argument to copy() function cannot be a directory in /var/www/web13/html/cam/rename.php on line 16
Referenz-URLs